Общие сведения о результатах оценки ресурсов
Узнайте, как интерпретировать и извлекать выходные параметры и схемы оценки ресурсов. В этой статье объясняется, как программно получить доступ к результатам оценки ресурсов в Jupyter Notebook. Если вы запускаете средство оценки ресурсов в Visual Studio Code из палитры команд, следующие команды не применяются.
Необходимые компоненты
Среда Python с установленным Python и Pip .
Последняя версия Visual Studio Code или откройте VS Code в Интернете.
VS Code с установленными расширениями Jupyter для Azure Quantum Development Kit, Python и Jupyter .
Последние версии Azure Quantum
qsharp
иqsharp-widgets
пакетов.python -m pip install --upgrade qsharp qsharp-widgets
Выходные параметры
Выходные данные оценки ресурсов — это отчет, который печатается в консоли и может быть доступен программным способом. Например, в следующем фрагменте кода показано, как получить доступ к параметрам оценки ресурсов.
result['jobParams']
Следующие выходные данные представляют собой возможные записи, к которым можно получить доступ программным способом.
Выходной параметр верхнего уровня | Тип данных | Description |
---|---|---|
status |
строка | Состояние задания всегда Succeeded . |
jobParams |
dictionary | Параметры target задания, передаваемого в качестве входных данных. |
physicalCounts |
dictionary | Оценки физического ресурса. Дополнительные сведения см. в разделе "Физические счетчики". |
physicalCountsFormatted |
dictionary | Оценки физического ресурса, отформатированные для отображения в данных отчета. Дополнительные сведения см. в разделе "Физические счетчики", отформатированные. |
logicalQubit |
dictionary | Свойства логического кубита. Дополнительные сведения см. в разделе "Логический кубит". |
tfactory |
dictionary | Свойства фабрики T. |
logicalCounts |
dictionary | Оценки логического ресурса предварительного макета. Дополнительные сведения см. в разделе "Логические счетчики". |
reportData |
dictionary | Создание данных для отчета о оценке ресурсов. |
Физические счетчики
Словарь physicalCounts
содержит следующие записи:
Выходной параметр | Тип данных | Description |
---|---|---|
physicalQubits |
number | Общее количество физических кубитов. |
runtime |
number | Общая среда выполнения для выполнения алгоритма в наносекундах. |
rqops |
number | Количество надежных квантовых операций в секунду (QOPS). |
breakdown |
dictionary | Разбивка по оценкам. Дополнительные сведения см. в разделе "Физические счетчики". |
Разбивка физических счетчиков
Словарь breakdown
physicalCounts
содержит следующие записи:
Выходной параметр | Тип данных | Description |
---|---|---|
algorithmicLogicalQubits |
number | Логические кубиты, необходимые для выполнения алгоритма, не включают ресурсы для фабрик T. |
algorithmicLogicalDepth |
number | Логические циклы, необходимые для выполнения алгоритма, и не включают ресурсы для фабрик T. |
logicalDepth |
number | Возможно, скорректированное количество циклов, вычисляемых всякий раз, когда время выполнения фабрики T ускоряется, а затем выполняется алгоритм. |
numTstates |
number | Количество состояний T, потребляемых алгоритмом. |
clockFrequency |
number | Число логических циклов в секунду. |
numTfactories |
number | Число фабрик T (при условии, что унифицированный дизайн фабрики T). |
numTfactoryRuns |
number | Количество частоты запуска всех параллельных фабрик T. |
physicalQubitsForTfactories |
number | Количество физических кубитов для всех фабрик T. |
physicalQubitsForAlgorithm |
number | Количество физических кубитов для макета алгоритма. |
requiredLogicalQubitErrorRate |
number | Требуемая логическая частота ошибок. |
requiredLogicalTstateErrorRate |
number | Требуемая скорость ошибки логического состояния T. |
numTsPerRotation |
number | Количество ворот T на поворот. |
cliffordErrorRate |
number | Частота ошибок Clifford на основе параметров кубита. |
Форматированные физические счетчики
Словарь physicalCountsFormatted
содержит следующие записи:
Выходной параметр | Тип данных | Description |
---|---|---|
runtime |
строка | Общая среда выполнения в виде понятной для человека строки. |
rqops |
строка | Число надежных квантовых операций в секунду (QOPS), отформатированных с суффиксом метрик. |
physicalQubits |
строка | Общее количество физических кубитов с суффиксом метрик. |
algorithmicLogicalQubits |
строка | Алгоритмические логические кубиты с суффиксом метрик. |
algorithmicLogicalDepth |
строка | Алгоритмическая логическая глубина с суффиксом метрик. |
logicalDepth |
строка | Возможно, скорректированная алгоритмическая логическая глубина с суффиксом метрик. |
numTstates |
строка | Число состояний T с суффиксом метрик. |
numTfactories |
строка | Число копий фабрики T с суффиксом метрик. |
numTfactoryRuns |
строка | Количество запусков фабрики T с суффиксом метрик. |
physicalQubitsForAlgorithm |
строка | Количество физических кубитов для алгоритма с суффиксом метрик. |
physicalQubitsForTfactories |
строка | Количество физических кубитов для фабрик T с суффиксом метрик. |
physicalQubitsForTfactoriesPercentage |
строка | Количество физических кубитов для всех фабрик T в процентах от общего числа. |
requiredLogicalQubitErrorRate |
строка | Усеченная требуемая логическая скорость ошибки кубита. |
requiredLogicalTstateErrorRate |
строка | Усеченная требуемая частота ошибок состояния T. |
physicalQubitsPerLogicalQubit |
строка | Количество физических кубитов на логический кубит с суффиксом метрик. |
logicalCycleTime |
строка | Время логического цикла логического кубита в виде понятной для человека строки. |
clockFrequency |
строка | Число логических циклов в секунду в виде понятной для человека строки. |
logicalErrorRate |
строка | Усеченная логическая частота ошибок. |
tfactoryPhysicalQubits |
строка | Количество физических кубитов в фабрике T с суффиксом метрик (или сообщением о отсутствии фабрики T). |
tfactoryRuntime |
строка | Среда выполнения одной фабрики T в виде понятной для человека строки (или сообщение о отсутствии фабрики T). |
numInputTstates |
строка | Количество входных состояний T (или сообщение о отсутствии фабрики T). |
numUnitsPerRound |
строка | Количество единиц на цикл дистилляции, разделенный запятыми в строке (или сообщение о отсутствии фабрики T). |
unitNamePerRound |
строка | Имена единиц каждого раунда дистилляции, разделенные запятыми в строке (или сообщение о отсутствии фабрики T). |
codeDistancePerRound |
строка | Расстояние кода на цикл дистилляции, разделенный запятыми в строке (или сообщение о отсутствии фабрики T). |
physicalQubitsPerRound |
строка | Количество физических кубитов на цикл дистилляции, разделенное запятыми в строке (или сообщение о отсутствии фабрики T). |
tfactoryRuntimePerRound |
строка | Среда выполнения каждого раунда дистилляции, отображаемая в виде запятых, разделенных понятными для человека строками (или сообщением о отсутствии фабрики T). |
tstateLogicalErrorRate |
строка | Усеченная логическая частота ошибок состояния T (или сообщение о отсутствии фабрики T). |
logicalCountsNumQubits |
строка | Количество кубитов (предварительная разметка) с суффиксом метрик. |
logicalCountsTCount |
строка | Число шлюзов T (предварительная макет) с суффиксом метрик. |
logicalCountsRotationCount |
строка | Количество ворот поворота (предварительная разметка) с суффиксом метрик. |
logicalCountsRotationDepth |
строка | Глубина поворота (предварительная макет) с суффиксом метрик. |
logicalCountsCczCount |
строка | Количество шлюзов CCZ (предварительная макет) с суффиксом метрик. |
logicalCountsCcixCount |
строка | Число шлюзов CCiX (предварительная макет) с суффиксом метрик. |
logicalCountsMeasurementCount |
строка | Количество измерений с одним кубитом (предварительная структура) с суффиксом метрик. |
errorBudget |
строка | Усеченный общий бюджет ошибок. |
errorBudgetLogical |
строка | Усеченный бюджет ошибок для логической ошибки. |
errorBudgetTstates |
строка | Усеченный бюджет ошибки для неисправной дистилляции состояния T. |
errorBudgetRotations |
строка | Усеченный бюджет ошибок для синтеза неисправного вращения. |
numTsPerRotation |
строка | Отформатированного числа Ts на поворот (может быть нет). |
Логический кубит
Словарь logicalQubit
содержит следующие записи:
Выходной параметр | Тип данных | Description |
---|---|---|
codeDistance |
number | Вычисленное расстояние кода для логического кубита. |
physicalQubits |
number | Количество физических кубитов для каждого логического кубита. |
logicalCycleTime |
number | Время выполнения одной логической операции. |
logicalErrorRate |
number | Частота логических ошибок логического кубита. |
Логические счетчики
Словарь logicalCounts
содержит следующие записи:
Выходной параметр | Тип данных | Description |
---|---|---|
numQubits |
number | Предварительное количество кубитов. |
tCount |
number | Предварительный номер макета ворот T. |
rotationCount |
number | Предварительный номер макета вращаемых ворот. |
rotationDepth |
number | Глубина поворота предварительного макета. |
cczCount |
number | Номер предварительного макета ворот CCZ. |
ccixCount |
number | Номер предварительного макета шлюзов CCiX. |
measurementCount |
number | Предварительное количество измерений с одним кубитом. |
Совет
Если вы хотите использовать предварительно вычисляемый набор логических счетчиков для задания оценки ресурсов, можно использовать LogicalCounts
операцию Python для передачи известных оценок в оценщик ресурсов. Дополнительные сведения см. в разделе "Использование известных оценок" с помощью средства оценки ресурсов.
Схема пространства
Общая оценка физического ресурса состоит из общего количества физических кубитов, используемых для копирования алгоритма и фабрики T. Вы можете проверить распределение между этими двумя с помощью схемы пространства.
На схеме пространства показана доля физических кубитов, используемых для алгоритма и фабрик T. Обратите внимание, что количество копий фабрики T способствует количеству физических кубитов для фабрик T.
В Jupyter Notebook можно получить доступ к схеме пространства с помощью SpaceChart
мини-приложения из qsharp-widgets
пакета.
import qsharp
from qsharp_widgets import SpaceChart
SpaceChart(result)
При выполнении нескольких конфигураций target параметров с оценкой границы Pareto можно назначить схему пространства для определенного решения. Например, в следующем коде показано, как построить схему пространства для первой конфигурации параметров и третьей самой короткой среды выполнения.
SpaceChart(result[0], 2) # First (estimate index=0) run and third (point index=2) shortest runtime
Схема времени
В квантовых вычислениях существует компромисс между количеством физических кубитов и средой выполнения алгоритма. Можно рассмотреть возможность выделения как можно больше физических кубитов, чтобы уменьшить среду выполнения алгоритма. Однако количество физических кубитов ограничено количеством физических кубитов, доступных в квантовом оборудовании. Понимание компромисса между средой выполнения и системным масштабированием является одним из более важных аспектов оценки ресурсов.
При оценке ресурсов алгоритма можно использовать схему пространства времени для визуализации компромиссов между количеством физических кубитов и средой выполнения алгоритма.
Примечание.
Чтобы увидеть несколько оптимальных сочетаний на схеме времени, необходимо задать тип оценки для оценки границ Pareto. Если вы запускаете средство оценки ресурсов в Visual Studio Code с помощью Q#параметра "Вычисление оценки ресурсов", оценка границ Pareto включена по умолчанию.
Схема пространства позволяет найти оптимальное сочетание пар {число кубитов, среды выполнения}, удовлетворяющих ограничениям квантового оборудования. На схеме показано количество физических кубитов и время выполнения алгоритма для каждой пары {число кубитов, среда выполнения}.
Чтобы запустить схему пространства в Jupyter Notebook, можно использовать EstimatesOverview
мини-приложение из qsharp-widgets
пакета.
import qsharp
from qsharp_widgets import EstimatesOverview
EstimatesOverview(result, colors=["#1f77b4", "#ff7f0e"], runNames=["e4 Surface Code", "e6 Floquet Code"])
Совет
Чтобы просмотреть сведения о оценке, можно навести указатель мыши на каждую точку на схеме.
Схема пространства особенно полезна при сравнении нескольких конфигураций target параметров для одного и того же алгоритма.
Примечание.
Если при работе с оценщиком ресурсов возникла проблема, ознакомьтесь со страницей "Устранение неполадок" или обратитесь к ней.AzureQuantumInfo@microsoft.com