Freigeben über


Grundlegendes zu den Ergebnisdaten der Ressourcenschätzung

Erfahren Sie, wie Sie die Ausgabeparameter und Diagramme des Ressourcenstimators interpretieren und abrufen. In diesem Artikel wird erläutert, wie Sie programmgesteuert auf die Ergebnisse der Ressourcen-Estimator in Jupyter-Notizbüchern zugreifen. Wenn Sie den Ressourcen-Estimator in Visual Studio Code aus der Befehlspalette ausführen, gelten die folgenden Befehle nicht.

Voraussetzungen

Ausgabe...parameter

Die Ausgabedaten der Ressourcenstimator sind ein Bericht, der in der Konsole gedruckt wird und programmgesteuert aufgerufen werden kann. Der folgende Codeausschnitt zeigt z. B. den Zugriff auf die Ressourcenschätzungsparameter.

result['jobParams']

Die folgenden Ausgabedaten stellen die möglichen Einträge dar, auf die programmgesteuert zugegriffen werden kann.

Ausgabeparameter der obersten Ebene Datentyp Beschreibung
status string Der Status des Auftrags, es ist immer Succeeded.
jobParams dictionary Die target Parameter des Auftrags, der als Eingabe übergeben wird.
physicalCounts dictionary Die Schätzungen der physischen Ressource. Weitere Informationen finden Sie unter Physische Anzahl.
physicalCountsFormatted dictionary Die physischen Ressourcenschätzungen, die für die Anzeige in Berichtsdaten formatiert sind. Weitere Informationen finden Sie unter "Physische Anzahl formatiert".
logicalQubit dictionary Die logischen Qubit-Eigenschaften. Weitere Informationen finden Sie unter "Logisches Qubit".
tfactory dictionary Die Eigenschaften der T-Factory.
logicalCounts dictionary Die logischen Ressourcenschätzungen vor dem Layout. Weitere Informationen finden Sie unter "Logische Anzahlen".
reportData dictionary Generierungsdaten für den Bericht zur Ressourcenschätzung.

Physische Anzahl

Das physicalCounts Wörterbuch enthält die folgenden Einträge:

Ausgabeparameter Datentyp Beschreibung
physicalQubits Zahl Die Gesamtzahl der physischen Qubits.
runtime Zahl Die Gesamtlaufzeit zum Ausführen des Algorithmus in Nanosekunden.
rqops Zahl Die Anzahl der zuverlässigen Quantenvorgänge pro Sekunde (QOPS).
breakdown dictionary Aufschlüsselung der Schätzungen. Weitere Informationen finden Sie unter "Aufschlüsselung der physischen Anzahlen".

Aufschlüsselung der physischen Anzahl

Das breakdown Wörterbuch enthält physicalCounts die folgenden Einträge:

Ausgabeparameter Datentyp Beschreibung
algorithmicLogicalQubits Zahl Die logischen Qubits, die für die Ausführung des Algorithmus erforderlich sind, und enthalten keine Ressourcen für T-Fabriken.
algorithmicLogicalDepth Zahl Die logischen Zyklen, die für die Ausführung des Algorithmus erforderlich sind, und enthalten keine Ressourcen für T-Fabriken.
logicalDepth Zahl Die möglicherweise angepasste Anzahl von Zyklen, die berechnet werden, wenn die Ausführungszeit der T-Factory schneller ist, dann die Algorithmusausführung.
numTstates Zahl Die Anzahl der vom Algorithmus verbrauchten T-Zustände.
clockFrequency Zahl Die Anzahl der logischen Zyklen pro Sekunde.
numTfactories Zahl Die Anzahl der T-Fabriken (unter einheitlichen T Factory-Design).
numTfactoryRuns Zahl Die Anzahl, wie oft alle parallelen T-Fabriken ausgeführt werden sollen.
physicalQubitsForTfactories Zahl Die Anzahl der physischen Qubits für alle T-Fabriken.
physicalQubitsForAlgorithm Zahl Die Anzahl der physischen Qubits für das Algorithmuslayout.
requiredLogicalQubitErrorRate Zahl Die erforderliche logische Fehlerrate.
requiredLogicalTstateErrorRate Zahl Die erforderliche Fehlerrate des logischen T-Zustands.
numTsPerRotation Zahl Die Anzahl der T-Tore pro Drehung.
cliffordErrorRate Zahl Die Clifford-Fehlerrate basierend auf den Qubit-Parametern.

Physische Anzahl formatiert

Das physicalCountsFormatted Wörterbuch enthält die folgenden Einträge:

Ausgabeparameter Datentyp Beschreibung
runtime string Gesamtlaufzeit als benutzerfreundliche Zeichenfolge.
rqops Zeichenfolge Die Anzahl der zuverlässigen Quantenvorgänge pro Sekunde (QOPS), die mit metrischem Suffix formatiert sind.
physicalQubits Zeichenfolge Gesamtzahl der physischen Qubits mit metrischen Suffixen.
algorithmicLogicalQubits Zeichenfolge Algorithmische logische Qubits mit metrischen Suffixen.
algorithmicLogicalDepth Zeichenfolge Algorithmische logische Tiefe mit metrischen Suffix.
logicalDepth Zeichenfolge Möglicherweise angepasste algorithmische logische Tiefe mit metrischen Suffix.
numTstates Zeichenfolge Anzahl der T-Zustände mit metrischen Suffix.
numTfactories Zeichenfolge Anzahl der T-Factorykopien mit metrischen Suffix.
numTfactoryRuns Zeichenfolge Die Anzahl der T-Factory-Ausführungen mit metrischen Suffixen.
physicalQubitsForAlgorithm Zeichenfolge Anzahl der physischen Qubits für Algorithmus mit metrischen Suffix.
physicalQubitsForTfactories Zeichenfolge Anzahl der physischen Qubits für T-Fabriken mit metrischen Suffix.
physicalQubitsForTfactoriesPercentage Zeichenfolge Die Anzahl der physischen Qubits für alle T-Fabriken in Prozent bis zur Summe.
requiredLogicalQubitErrorRate Zeichenfolge Abgeschnittene erforderliche logische Qubit-Fehlerrate.
requiredLogicalTstateErrorRate Zeichenfolge Abgeschnittene erforderliche T-Zustandsfehlerrate.
physicalQubitsPerLogicalQubit Zeichenfolge Anzahl der physischen Qubits pro logischem Qubit mit metrischen Suffix.
logicalCycleTime Zeichenfolge Die logische Zykluszeit eines logischen Qubits als menschliche Zeichenfolge.
clockFrequency Zeichenfolge Die Anzahl der logischen Zyklen pro Sekunde als benutzerfreundliche Zeichenfolge.
logicalErrorRate Zeichenfolge Abgeschnittene logische Fehlerrate.
tfactoryPhysicalQubits Zeichenfolge Anzahl der physischen Qubits in T-Factory mit metrischen Suffix (oder Meldung, dass keine T-Factory vorhanden ist).
tfactoryRuntime Zeichenfolge Die Laufzeit einer einzelnen T-Factory als menschliche Zeichenfolge (oder Meldung, dass keine T-Factory vorhanden ist).
numInputTstates Zeichenfolge Die Anzahl der Eingabe-T-Zustände (oder die Meldung, dass keine T-Factory vorhanden ist).
numUnitsPerRound Zeichenfolge Die Anzahl der Einheiten pro Destillation rund, Komma getrennt in einer Zeichenfolge (oder Meldung, dass keine T-Factory vorhanden ist).
unitNamePerRound Zeichenfolge Die Einheitennamen der einzelnen Destillationsrunden, komma getrennt in einer Zeichenfolge (oder Meldung, dass keine T-Factory vorhanden ist).
codeDistancePerRound Zeichenfolge Der Codeabstand pro Destillationsrunde, Komma getrennt in einer Zeichenfolge (oder Meldung, dass keine T-Factory vorhanden ist).
physicalQubitsPerRound Zeichenfolge Die Anzahl der physischen Qubits pro Destillationsrunde, Komma getrennt in einer Zeichenfolge (oder Nachricht, dass keine T-Factory vorhanden ist).
tfactoryRuntimePerRound Zeichenfolge Die Laufzeit der einzelnen Destillationsrunden, die als durch Trennzeichen getrennte menschliche Zeichenfolgen (oder Meldung, dass keine T-Factory vorhanden ist) angezeigt wird.
tstateLogicalErrorRate Zeichenfolge Abgeschnittene Fehlerrate des logischen T-Zustands (oder Meldung, dass keine T-Factory vorhanden ist).
logicalCountsNumQubits Zeichenfolge Anzahl der Qubits (Vorlayout) mit metrischen Suffix.
logicalCountsTCount Zeichenfolge Anzahl der T-Tore (Vorlayout) mit metrischen Suffix.
logicalCountsRotationCount Zeichenfolge Anzahl der Drehtore (Vorlayout) mit metrischen Suffixen.
logicalCountsRotationDepth Zeichenfolge Drehtiefe (Vorlayout) mit metrischen Suffixen.
logicalCountsCczCount Zeichenfolge Anzahl der CCZ-Gates (Vorlayout) mit metrischen Suffix.
logicalCountsCcixCount Zeichenfolge Anzahl der CCiX-Gates (Vorlayout) mit metrischen Suffixen.
logicalCountsMeasurementCount Zeichenfolge Anzahl der Einzel-Qubit-Maße (Pre-Layout) mit metrischen Suffixen.
errorBudget Zeichenfolge Kürzung des Gesamtfehlerbudgets.
errorBudgetLogical Zeichenfolge Abgeschnittenes Fehlerbudget für logischen Fehler.
errorBudgetTstates Zeichenfolge Abgeschnittenes Fehlerbudget für fehlerhafte T-Zustandsdestillation.
errorBudgetRotations Zeichenfolge Abgeschnittenes Fehlerbudget für fehlerhafte Drehungssynthese.
numTsPerRotation Zeichenfolge Formatierte Anzahl von Ts pro Drehung (kann keine sein).

Logisches Qubit

Das logicalQubit Wörterbuch enthält die folgenden Einträge:

Ausgabeparameter Datentyp Beschreibung
codeDistance Zahl Der berechnete Codeabstand für den logischen Qubit.
physicalQubits Zahl Die Anzahl der physischen Qubits für jeden logischen Qubit.
logicalCycleTime Zahl Die Zeit zum Ausführen eines logischen Vorgangs.
logicalErrorRate Zahl Die logische Fehlerrate des logischen Qubits.

Logische Anzahl

Das logicalCounts Wörterbuch enthält die folgenden Einträge:

Ausgabeparameter Datentyp Beschreibung
numQubits Zahl Vorlayoutanzahl von Qubits.
tCount Zahl Vorlayoutanzahl von T-Toren.
rotationCount Zahl Vorlayoutanzahl der Drehtore.
rotationDepth Zahl Tiefe der Vorlayoutdrehung.
cczCount Zahl Vorlayoutnummer der CCZ-Tore.
ccixCount Zahl Vorlayoutnummer der CCiX-Tore.
measurementCount Zahl Vorlayoutanzahl von Einzel-Qubit-Messungen.

Tipp

Wenn Sie einen vordefinierten Satz von logischen Zählungen für einen Ressourcenschätzungsauftrag verwenden möchten, können Sie den LogicalCounts Python-Vorgang verwenden, um die bekannten Schätzungen an den Resource Estimator zu übergeben. Weitere Informationen finden Sie unter Verwendung bekannter Schätzungen mit dem Ressourcen-Estimator.

Raumdiagramm

Die gesamt physische Ressourcenschätzung besteht aus der Gesamtzahl der physischen Qubits, die sowohl für den Algorithmus als auch für T-Factorykopien verwendet werden. Sie können die Verteilung zwischen diesen beiden mithilfe des Raumdiagramms überprüfen.

Das Raumdiagramm zeigt den Anteil der physischen Qubits, die für den Algorithmus und die T-Fabriken verwendet werden. Beachten Sie, dass die Anzahl der Kopien von T-Factoryparametern zur Anzahl der physischen Qubits für T-Factoryparameter beiträgt.

Im Jupyter-Notizbuch können Sie über das SpaceChart Paket qsharp-widgets auf das Raumdiagramm zugreifen.

import qsharp

from qsharp_widgets import SpaceChart
SpaceChart(result)

Kreisdiagramm mit der Verteilung der gesamten physischen Qubits zwischen Algorithmus-Qubits und T-Factory-Qubits. Es gibt eine Tabelle mit der Aufschlüsselung der Anzahl der T-Werkskopien und der Anzahl der physischen Qubits pro T-Fabrik.

Wenn Sie mehrere Konfigurationen von target Parametern mit der Pareto-Grenzschätzung ausführen, können Sie das Raumdiagramm für eine bestimmte Lösung der Der folgende Code zeigt beispielsweise, wie das Raumdiagramm für die erste Konfiguration von Parametern und die dritte kürzeste Laufzeit dargestellt wird.

SpaceChart(result[0], 2) # First (estimate index=0) run and third (point index=2) shortest runtime

Raumzeitdiagramm

Im Quanten computing gibt es einen Kompromiss zwischen der Anzahl der physischen Qubits und der Laufzeit des Algorithmus. Sie könnten die Zuordnung von so vielen physischen Qubits wie möglich in Betracht ziehen, um die Laufzeit des Algorithmus zu reduzieren. Die Anzahl der physischen Qubits ist jedoch durch die Anzahl der physischen Qubits begrenzt, die in der Quantenhardware verfügbar sind. Das Verständnis des Kompromisses zwischen Laufzeit und Systemmaßstab ist einer der wichtigeren Aspekte der Ressourcenschätzung.

Beim Schätzen der Ressourcen eines Algorithmus können Sie das Raumzeitdiagramm verwenden, um die Kompromisse zwischen der Anzahl der physischen Qubits und der Laufzeit des Algorithmus zu visualisieren.

Hinweis

Um mehrere optimale Kombinationen im Raumzeitdiagramm anzuzeigen, müssen Sie den Schätztyp auf die Grenzabschätzung von Pareto festlegen. Wenn Sie den Ressourcen-Estimator in Visual Studio Code mit der Q#Option "Ressourcenschätzungen berechnen" ausführen, ist die Schätzung der Grenzen von Pareto standardmäßig aktiviert.

Mit dem Raumzeitdiagramm können Sie die optimale Kombination aus {Anzahl von Qubits, Laufzeit}-Paaren finden, die die Einschränkungen der Quantenhardware erfüllen. Das Diagramm zeigt die Anzahl der physischen Qubits und die Laufzeit des Algorithmus für jedes {Anzahl von Qubits, Runtime}-Paaren.

Um das Raumzeitdiagramm im Jupyter-Notizbuch auszuführen, können Sie das EstimatesOverview Widget aus dem qsharp-widgets Paket verwenden.

import qsharp

from qsharp_widgets import EstimatesOverview

EstimatesOverview(result, colors=["#1f77b4", "#ff7f0e"], runNames=["e4 Surface Code", "e6 Floquet Code"])

Screenshot des Qubit-Time-Diagramms der Ressourcenstimator.

Tipp

Um die Schätzungsdetails anzuzeigen, können Sie auf jeden Punkt im Diagramm zeigen.

Das Raumzeitdiagramm ist besonders nützlich, wenn mehrere Konfigurationen von target Parametern für denselben Algorithmus verglichen werden.

Screenshot des Raumzeitdiagramms und der Ergebnistabelle beim Ausführen mehrerer Konfigurationen von Parametern im Ressourcenstimator.

Hinweis

Wenn beim Arbeiten mit der Ressourcenschätzung probleme auftreten, schauen Sie sich die Seite "Problembehandlung" an, oder wenden Sie sich an den Kontakt AzureQuantumInfo@microsoft.com.

Nächste Schritte