Školení
Modul
Odhad fyzických prostředků pro kvantové algoritmy pomocí odhadu prostředků Azure Quantum - Training
Zjistěte, jak začít s estimátorem prostředků Azure Quantum.
Tento prohlížeč se už nepodporuje.
Upgradujte na Microsoft Edge, abyste mohli využívat nejnovější funkce, aktualizace zabezpečení a technickou podporu.
Zjistěte, jak interpretovat a načítat výstupní parametry a diagramy nástroje Pro odhad prostředků. Tento článek vysvětluje, jak programově získat přístup k výsledkům Nástroje pro odhad prostředků v poznámkových blocích Jupyter v editoru Visual Studio Code.
Prostředí Pythonu s nainstalovanými Pythonem a Pipem.
Nejnovější verze editoru Visual Studio Code nebo otevřete VS Code na webu
VS Code s nainstalovanými rozšířeními Azure Quantum Development Kit, Python a Jupyter.
Nejnovější balíčky Azure Quantum qsharp
a qsharp-widgets
.
python -m pip install --upgrade qsharp qsharp-widgets
Poznámka
Pokud nástroj pro odhad prostředků spustíte v editoru Visual Studio Code z palety příkazů, následující příkazy se nevztahují. Další informace najdete v tématu Různé způsoby spuštění nástroje pro odhad prostředků.
Výstupní data estimátoru prostředků jsou sestava, která se vytiskne v konzole a dá se k němu přistupovat prostřednictvím kódu programu. Například následující fragment kódu ukazuje, jak získat přístup k parametrům odhadu prostředků.
result['jobParams']
Následující výstupní data představují možné položky, ke kterým lze přistupovat prostřednictvím kódu programu.
Výstupní parametr nejvyšší úrovně | Datový typ | Popis |
---|---|---|
status |
string | Stav úlohy je vždy Succeeded . |
jobParams |
slovník | Parametry úlohy target, které jsou předány jako vstup. |
physicalCounts |
slovník | Odhady fyzických prostředků. Další informace naleznete v tématu Fyzické počty. |
physicalCountsFormatted |
slovník | Odhady fyzických zdrojů naformátované pro zobrazení v datech sestavy. Další informace naleznete v tématu Fyzické počty formátované. |
logicalQubit |
slovník | Vlastnosti logického qubitu. Další informace najdete v tématu Logický qubit. |
tfactory |
slovník | Vlastnosti továrny T |
logicalCounts |
slovník | Odhady logických prostředků před rozložením Další informace viz Logické počty. |
reportData |
slovník | Tvorba dat pro zprávu o odhadu zdrojů |
Slovník physicalCounts
obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
physicalQubits |
Číslo | Celkový počet fyzických qubitů. |
runtime |
Číslo | Celková doba běhu algoritmu v nanosekundách. |
rqops |
Číslo | Počet spolehlivých kvantových operací za sekundu (QOPS). |
breakdown |
slovník | Rozpis odhadů Další informace naleznete v části Rozpis fyzických počtů. |
Slovník breakdown
physicalCounts
obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
algorithmicLogicalQubits |
Číslo | Logické qubity potřebné ke spuštění algoritmu, které ale nezahrnují prostředky pro T továrny. |
algorithmicLogicalDepth |
Číslo | Logické cykly potřebné pro spuštění algoritmu nezahrnují prostředky pro továrny T. |
logicalDepth |
Číslo | Pravděpodobně upravený počet cyklů, který se počítá vždy, když je doba provádění továrny T rychlejší než doba provádění algoritmu. |
numTstates |
Číslo | Počet stavů T spotřebovaných algoritmem |
clockFrequency |
Číslo | Počet logických cyklů za sekundu |
numTfactories |
Číslo | Počet továren T (za předpokladu jednotného návrhu výroby T). |
numTfactoryRuns |
Číslo | Počet, jak často by měly běžet všechny paralelní továrny T. |
physicalQubitsForTfactories |
Číslo | Počet fyzických qubitů pro všechny továrny typu T. |
physicalQubitsForAlgorithm |
Číslo | Počet fyzických qubitů pro rozložení algoritmu. |
requiredLogicalQubitErrorRate |
Číslo | Požadovaná logická míra chyb. |
requiredLogicalTstateErrorRate |
Číslo | Požadovaná úroveň chybovosti logického T stavu. |
numTsPerRotation |
Číslo | Počet bran T na jednu rotaci. |
cliffordErrorRate |
Číslo | Chybovost Cliffordu založená na parametrech qubitu. |
Slovník physicalCountsFormatted
obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
runtime |
řetězec | Celková doba běhu jako lidem přívětivý řetězec. |
rqops |
řetězec | Počet spolehlivých kvantových operací za sekundu (QOPS) formátovaný s příponou metriky |
physicalQubits |
řetězec | Celkový počet fyzických qubitů s příponou metriky |
algorithmicLogicalQubits |
řetězec | Algoritmické logické qubity s příponou metriky |
algorithmicLogicalDepth |
string | Algoritmická logická hloubka s příponou metriky |
logicalDepth |
řetězec | Možná upravená algoritmická logická hloubka s metrickou příponou. |
numTstates |
řetězec | Počet stavů T s příponou metriky |
numTfactories |
řetězec | Počet kopií továrny T s metrickým sufixem |
numTfactoryRuns |
řetězec | Počet běhů továrny T s příponou metriky. |
physicalQubitsForAlgorithm |
řetězec | Počet fyzických qubitů pro algoritmus s příponou metriky |
physicalQubitsForTfactories |
řetězec | Počet fyzických qubitů pro T-fabriky s metrickou příponou |
physicalQubitsForTfactoriesPercentage |
řetězec | Počet fyzických qubitů pro všechny továrny T v procentech vzhledem k celkovému počtu. |
requiredLogicalQubitErrorRate |
řetězec | Zkrátila se požadovaná logická míra chyb qubitu. |
requiredLogicalTstateErrorRate |
řetězec | Zkrácená požadovaná míra chyb pro stav T. |
physicalQubitsPerLogicalQubit |
řetězec | Počet fyzických qubitů na logický qubit s příponou metriky |
logicalCycleTime |
řetězec | Délka logického cyklu logického qubitu jako řetězec přívětivý pro člověka. |
clockFrequency |
řetězec | Počet logických cyklů za sekundu jako uživatelsky přívětivý řetězec. |
logicalErrorRate |
řetězec | Zkrácená logická míra chyb. |
tfactoryPhysicalQubits |
řetězec | Počet fyzických qubitů v T továrně s metrickou příponou (nebo zpráva, že továrna T neexistuje). |
tfactoryRuntime |
string | Doba běhu jedné továrny T jako uživatelsky přívětivý řetězec (nebo zpráva, že neexistuje žádná továrna T). |
numInputTstates |
řetězec | Počet vstupních stavů (nebo zpráva, že neexistuje žádná továrna T). |
numUnitsPerRound |
řetězec | Počet jednotek na destilační kolo, čárka oddělená v řetězci (nebo zpráva, že neexistuje žádná továrna T). |
unitNamePerRound |
řetězec | Názvy jednotek každého destilačního kola, oddělené čárkami v řetězci (případně zpráva, že neexistuje žádná továrna T). |
codeDistancePerRound |
string | Vzdálenosti kódu v rámci destilačního kola, oddělené čárkami v řetězci (nebo zpráva, že není žádná továrna T). |
physicalQubitsPerRound |
string | Počet fyzických qubitů na destilační kolo, čárka oddělená v řetězci (nebo zpráva, že neexistuje žádná továrna T). |
tfactoryRuntimePerRound |
řetězec | Doba běhu každého destilačního kola, zobrazená jako čárkami oddělené uživatelsky přívětivé řetězce (nebo zpráva, že neexistuje továrna T). |
tstateLogicalErrorRate |
řetězec | Zkrácená chybovost logického T stavu (nebo zpráva, že neexistuje žádná továrna T). |
logicalCountsNumQubits |
řetězec | Počet qubitů (před rozložením) s metrickou příponou |
logicalCountsTCount |
řetězec | Počet T bran (před rozložením) s metrickou příponou. |
logicalCountsRotationCount |
řetězec | Počet rotačních bran s metrickou příponou (před rozvržením) |
logicalCountsRotationDepth |
string | Hloubka otočení (před rozložením) s metrickou příponou. |
logicalCountsCczCount |
string | Počet CCZ bran (předem uspořádaných) s metrickou příponou |
logicalCountsCcixCount |
řetězec | Počet bran CCiX (před rozložením) s metrickou příponou. |
logicalCountsMeasurementCount |
string | Počet jednoqubitových měření (před rozložením) s metrickou příponou. |
errorBudget |
řetězec | Celkový rozpočet chyb byl zkrácen. |
errorBudgetLogical |
řetězec | Zkrácený rozpočet chyb pro logickou chybu |
errorBudgetTstates |
řetězec | Zkrácený chybový rozpočet pro vadnou destilaci stavu T. |
errorBudgetRotations |
řetězec | Zkrácený rozpočet chyb pro syntézu vadných rotací |
numTsPerRotation |
řetězec | Formátovaný počet T na otočení (může být Žádný). |
Slovník obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
codeDistance |
Číslo | Vypočítaná vzdálenost kódu pro logický qubit. |
physicalQubits |
Číslo | Počet fyzických qubitů pro každý logický qubit. |
logicalCycleTime |
Číslo | Čas spuštění jedné logické operace. |
logicalErrorRate |
Číslo | Logická míra chyb logického qubitu. |
Slovník obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
numQubits |
Číslo | Počet qubitů před uspořádáním |
tCount |
Číslo | Počet bran T před rozložením. |
rotationCount |
Číslo | Počet rotačních bran před konfigurací |
rotationDepth |
Číslo | Hloubka rotace před nastavením |
cczCount |
Číslo | Počet CCZ bran před návrhem rozložení. |
ccixCount |
Číslo | Počet bran CCiX před rozložením |
measurementCount |
Číslo | Počet měření jednoqubitového před uspořádáním. |
Tip
Pokud chcete pro úlohu odhadu prostředků použít předem vypočítanou sadu logických počtů, můžete pomocí LogicalCounts
Python operace předat známé odhady do nástroje pro odhad prostředků. Další informace naleznete viz Jak používat známé odhady s nástrojem pro odhad prostředků.
Celkový odhad fyzických prostředků zahrnuje celkový počet fyzických qubitů používaných jak pro algoritmus, tak pro metodu T factory. Rozdělení mezi těmito dvěma můžete zkontrolovat pomocí mezerního diagramu.
Prostorový diagram znázorňuje podíl fyzických qubitů používaných pro algoritmus a továrny T. Všimněte si, že počet kopií T factory přispívá k počtu fyzických qubitů pro továrny T.
V Jupyter Notebook můžete přistupovat k diagramu prostoru pomocí widgetu SpaceChart
z balíčku qsharp-widgets
.
import qsharp
from qsharp_widgets import SpaceChart
SpaceChart(result)
Výsečový diagram znázorňující rozdělení celkových fyzických qubitů mezi qubity algoritmů a qubity T factory. Je zde tabulka s rozpisem počtu kopií T factory a počtu fyzických qubitů na jednu T factory.
Při spouštění více konfigurací parametrů target s odhadem hranice Pareto můžete vykreslit prostorový diagram pro konkrétní řešení. Například následující kód ukazuje, jak vykreslit prostorový diagram pro první konfiguraci parametrů a třetí nejkratší dobu běhu.
SpaceChart(result[0], 2) # First (estimate index=0) run and third (point index=2) shortest runtime
V kvantových výpočtech existuje kompromis mezi počtem fyzických qubitů a modulem runtime algoritmu. Můžete zvážit přidělení co největšího počtu fyzických qubitů, abyste snížili dobu běhu algoritmu. Počet fyzických qubitů je však omezený počtem fyzických qubitů dostupných v kvantovém hardwaru. Pochopení kompromisu mezi modulem runtime a škálováním systému je jedním z důležitějších aspektů odhadu prostředků.
Při odhadu prostředků algoritmu můžete pomocí diagramu prostorového času vizualizovat kompromisy mezi počtem fyzických qubitů a modulem runtime algoritmu.
Poznámka
Pokud chcete v diagramu prostorového času zobrazit několik optimálních kombinací, musíte nastavit způsob odhadu na Paretovo odhadování hranice. Pokud spustíte nástroj Odhad prostředků v editoru Visual Studio Code pomocí možnosti Vypočítat odhady prostředků, je ve výchozím nastavení povolen odhad paretovské hranice.
Diagram prostorového času umožňuje najít optimální kombinaci {number of qubits, runtime} párů, které splňují omezení kvantového hardwaru. Diagram znázorňuje počet fyzických qubitů a dobu běhu algoritmu pro každou dvojici {počet qubitů, doba běhu}.
Chcete-li spustit diagram prostorového času v Jupyter Notebooku, můžete použít widget EstimatesOverview
z balíčku qsharp-widgets
.
import qsharp
from qsharp_widgets import EstimatesOverview
EstimatesOverview(result, colors=["#1f77b4", "#ff7f0e"], runNames=["e4 Surface Code", "e6 Floquet Code"])
Snímek obrazovky znázorňující diagram qubit-time v estimátoru prostředků
Tip
Pokud chcete zobrazit podrobnosti odhadu, můžete najet myší na každý bod v diagramu.
Časoprostorový diagram je zvláště užitečný při porovnávání několika konfigurací parametrů target pro stejný algoritmus.
Snímek obrazovky znázorňující časoprostorový diagram a tabulku výsledků při běhu více konfigurací parametru v nástroji pro odhad prostředků
Poznámka
Pokud při práci s nástrojem pro odhad prostředků narazíte na nějaký problém, podívejte se na stránku Řešení potíží, nebo kontaktujte AzureQuantumInfo@microsoft.com.
Školení
Modul
Odhad fyzických prostředků pro kvantové algoritmy pomocí odhadu prostředků Azure Quantum - Training
Zjistěte, jak začít s estimátorem prostředků Azure Quantum.
Dokumentace
Spuštění estimátoru prostředků - Azure Quantum
Tento dokument obsahuje základní průvodce spouštěním odhadů prostředků místně i online pomocí různých sad SDK a prostředí IDEs.
Parametry cílového odhadu zdrojů - Azure Quantum
Přečtěte si o vstupních parametrech estimátoru prostředků v Azure Quantum a o tom, jak je přizpůsobit.
Kurz: Odhad prostředků problému s kvantovou chemií - Azure Quantum
V tomto kurzu odhadnete fyzické zdroje potřebné k výpočtu energie hamiltoniánu na chemickou přesnost 1 mHa.