Vysvětlení výsledných dat nástroje Pro posouzení prostředků
Naučte se interpretovat a načítat výstupní parametry a diagramy nástroje Pro posouzení prostředků. Tento článek vysvětluje, jak programově získat přístup k výsledkům Nástroje pro posouzení prostředků v poznámkových blocích Jupyter Notebooks. Pokud nástroj Resource Estimator spustíte v editoru Visual Studio Code z palety příkazů, následující příkazy se nepoužijí.
Požadavky
Prostředí Pythonu s nainstalovaným 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ší azure Quantum
qsharp
aqsharp-widgets
balíčky.python -m pip install --upgrade qsharp qsharp-widgets
Výstupní parametry
Výstupní data nástroje Resource Estimator jsou sestava, která se vytiskne v konzole a je přístupná programově. Například následující fragment kódu ukazuje, jak získat přístup k parametrům odhadu prostředků.
result['job_params']
Následující výstupní data představují možné položky, ke kterým je možné přistupovat prostřednictvím kódu programu.
Výstupní parametr nejvyšší úrovně | Datový typ | Description |
---|---|---|
status |
řetězec | Stav úlohy je vždy Succeeded . |
job_params |
Slovník | Parametry target úlohy, které jsou předány jako vstup. |
physical_counts |
Slovník | Odhady fyzických prostředků. Další informace najdete v tématu Fyzické počty. |
physical_counts_formatted |
Slovník | Odhady fyzických prostředků naformátované pro zobrazení v datech sestavy Další informace najdete v tématu Formát fyzických počtů. |
logical_qubit |
Slovník | Vlastnosti logického qubitu. Další informace najdete v tématu Logický qubit. |
tfactory |
Slovník | Vlastnosti továrny T. |
logical_counts |
Slovník | Odhady logických prostředků před rozložením. Další informace najdete v tématu Logické počty. |
report_data |
Slovník | Generování dat pro sestavu odhadu prostředků |
Fyzické počty
Slovník physical_counts
obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
physical_qubits |
číslo | Celkový počet fyzických qubitů. |
runtime |
číslo | Celkový modul runtime pro spuštění algoritmu v nanosekundách |
rqops |
číslo | Počet spolehlivých kvantových operací za sekundu (QOPS). |
breakdown |
Slovník | Rozpis odhadů. Další informace najdete v tématu Rozpis fyzických počtů. |
Rozpis fyzických počtů
Slovník breakdown
obsahuje physical_counts
následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
algorithmic_logical_qubits |
číslo | Logické qubity potřebné ke spuštění algoritmu a nezahrnují prostředky pro T factory. |
algorithmic_logical_depth |
číslo | Logické cykly potřebné pro spuštění algoritmu a nezahrnují prostředky pro T factory. |
logical_depth |
číslo | Pravděpodobně upravený počet cyklů, který se vypočítá vždy, když je doba spuštění T továrny rychlejší než provádění algoritmu. |
num_tstates |
číslo | Počet stavů T spotřebovaných algoritmem. |
clock_frequency |
číslo | Počet logických cyklů za sekundu. |
num_tfactories |
číslo | Počet T továren (za předpokladu jednotného návrhu T továrny). |
num_tfactory_runs |
číslo | Počet, jak často by měly běžet všechny paralelní továrny T. |
physical_qubits_for_tfactories |
číslo | Počet fyzických qubitů pro všechny T továrny. |
physical_qubits_for_algorithm |
číslo | Počet fyzických qubitů pro rozložení algoritmu. |
required_logical_qubit_error_rate |
číslo | Požadovaná logická míra chyb. |
required_logical_tstate_error_rate |
číslo | Požadovaná logická míra chyb ve stavu T. |
num_ts_per_rotation |
číslo | Počet T bran na otočení. |
clifford_error_rate |
číslo | Cliffordova míra chyb založená na parametrech qubitu. |
Formát fyzických počtů
Slovník physical_counts_formatted
obsahuje následující položky:
Výstupní parametr | Datový typ | Description |
---|---|---|
runtime |
řetězec | Total runtime as human friendly string. |
rqops |
řetězec | Počet spolehlivých kvantových operací za sekundu (QOPS) formátovaných s příponou metriky |
physical_qubits |
řetězec | Celkový počet fyzických qubitů s příponou metriky |
algorithmic_logical_qubits |
řetězec | Algoritmické logické qubity s příponou metriky |
algorithmic_logical_depth |
řetězec | Algoritmická logická hloubka s příponou metriky |
logical_depth |
řetězec | Možná upravená algoritmická logická hloubka s příponou metriky. |
num_tstates |
řetězec | Počet stavů T s příponou metriky |
num_tfactories |
řetězec | Počet kopií T factory s příponou metriky |
num_tfactory_runs |
řetězec | Počet spuštění T factory s příponou metriky |
physical_qubits_for_algorithm |
řetězec | Počet fyzických qubitů pro algoritmus s příponou metriky |
physical_qubits_for_tfactories |
řetězec | Počet fyzických qubitů pro továrny T s příponou metriky |
physical_qubits_for_tfactories_percentage |
řetězec | Počet fyzických qubitů pro všechny T továrny v procentech k celkovému počtu. |
required_logical_qubit_error_rate |
řetězec | Zkrácená požadovaná logická míra chyb qubitu |
required_logical_tstate_error_rate |
řetězec | Zkrácená požadovaná míra chyb stavu T. |
physical_qubits_per_logical_qubit |
řetězec | Počet fyzických qubitů na logický qubit s příponou metriky |
logical_cycle_time |
řetězec | Čas logického cyklu logického qubitu jako řetězec pro člověka. |
clock_frequency |
řetězec | Počet logických cyklů za sekundu jako řetězec pro člověka. |
logical_error_rate |
řetězec | Zkrácená logická míra chyb. |
tfactory_physical_qubits |
řetězec | Počet fyzických qubitů v T factory s příponou metriky (nebo zpráva, že neexistuje žádná továrna T) |
tfactory_runtime |
řetězec | Modul runtime jedné továrny T jako řetězec přátelský pro člověka (nebo zpráva, že neexistuje žádná továrna T). |
num_input_tstates |
řetězec | Počet vstupních stavů T (nebo zpráva, že neexistuje žádná továrna T). |
num_units_per_round |
řetězec | Počet jednotek na destilační kolo, čárka oddělená řetězcem (nebo zpráva, že neexistuje továrna T). |
unit_name_per_round |
řetězec | Názvy jednotek každého destilačního kola, čárka oddělená řetězcem (nebo zpráva, že neexistuje žádná továrna T). |
code_distance_per_round |
řetězec | Vzdálenosti kódu pro každé kolo destilace, čárka oddělená v řetězci (nebo zpráva, že neexistuje továrna T). |
physical_qubits_per_round |
řetězec | Počet fyzických qubitů na destilační kolo, čárka oddělená řetězcem (nebo zpráva, že neexistuje žádná továrna T). |
tfactory_runtime_per_round |
řetězec | Doba trvání každého kola destilace, která se zobrazuje jako čárkami oddělené řetězce pro člověka (nebo zpráva, že neexistuje žádná továrna T). |
tstate_logical_error_rate |
řetězec | Zkrácená chybovost logického stavu T (nebo zpráva, že neexistuje žádná továrna T). |
logical_counts_num_qubits |
řetězec | Počet qubitů (před rozložením) s příponou metriky |
logical_counts_t_count |
řetězec | Počet T bran (před rozložením) s příponou metriky |
logical_counts_rotation_count |
řetězec | Počet bran otáčení (před rozložením) s příponou metriky |
logical_counts_rotation_depth |
řetězec | Hloubka otočení (před rozložením) s příponou metriky |
logical_counts_ccz_count |
řetězec | Počet bran CCZ (před rozložením) s příponou metriky. |
logical_counts_ccix_count |
řetězec | Počet bran CCiX (před rozložením) s příponou metriky |
logical_counts_measurement_count |
řetězec | Počet měření s jedním qubitem (před rozložením) s příponou metriky |
error_budget |
řetězec | Zkrácený celkový rozpočet chyb. |
error_budget_logical |
řetězec | Zkrácený rozpočet chyb pro logickou chybu |
error_budget_tstates |
řetězec | Zkrácený rozpočet chyb pro vadnou destilaci stavu T. |
error_budget_rotations |
řetězec | Zkrácený rozpočet chyb pro syntézu chybné rotace. |
num_ts_per_rotation |
řetězec | Formátovaný počet Ts na otočení (může být Žádný). |
Logický qubit
Slovník logical_qubit
obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
code_distance |
číslo | Vypočítaná vzdálenost kódu logického qubitu |
physical_qubits |
číslo | Počet fyzických qubitů pro každý logický qubit. |
logical_cycle_time |
číslo | Čas k provedení jedné logické operace. |
logical_error_rate |
číslo | Logická míra chyb logického qubitu. |
Logické počty
Slovník logical_counts
obsahuje následující položky:
Výstupní parametr | Datový typ | Popis |
---|---|---|
num_qubits |
číslo | Počet qubitů před rozložením |
t_count |
číslo | Počet T bran před rozložením. |
rotation_count |
číslo | Počet bran otáčení před rozložením. |
rotation_depth |
číslo | Hloubka otočení před rozložením. |
ccz_count |
číslo | Počet bran CCZ před rozložením. |
ccix_count |
číslo | Počet bran CCiX před rozložením. |
measurement_count |
číslo | Počet měření s jedním qubitem před rozložením. |
Diagram prostoru
Odhad celkového fyzického prostředku se skládá z celkového počtu fyzických qubitů použitých pro kopie algoritmu i T factory. Rozdělení mezi těmito dvěma můžete zkontrolovat pomocí prostorového diagramu.
Prostorový diagram znázorňuje podíl fyzických qubitů použitých pro algoritmus a T factory. Všimněte si, že počet kopií T factory přispívá k počtu fyzických qubitů pro T továrny.
V Jupyter Notebook můžete k diagramu prostoru přistupovat pomocí SpaceChart
widgetu z qsharp-widgets
balíčku.
import qsharp
from qsharp_widgets import SpaceChart
SpaceChart(result)
Při spouštění více konfigurací target parametrů s odhadem Paretovy hranice můžete vykreslit diagram prostoru pro konkrétní řešení. Následující kód například ukazuje, jak vykreslit diagram prostoru pro první konfiguraci parametrů a třetí nejkratší modul runtime.
SpaceChart(result[0], 2) # First (estimate index=0) run and third (point index=2) shortest runtime
Prostoročasový diagram
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 běh algoritmu. Počet fyzických qubitů je však omezený počtem fyzických qubitů dostupných na 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 odhadování prostředků algoritmu můžete pomocí prostorového diagramu vizualizovat kompromisy mezi počtem fyzických qubitů a modulem runtime algoritmu.
Poznámka
Pokud chcete zobrazit více optimálních kombinací v prostoroprostorovém diagramu, musíte nastavit typ odhadu na Paretův odhad hranice. Pokud nástroj Pro posouzení prostředků spustíte v editoru Visual Studio Code pomocí Q#možnosti : Vypočítat odhady prostředků , paretův odhad hranice je ve výchozím nastavení povolený.
Prostoročasový diagram umožňuje najít optimální kombinaci {počet qubitů, párů modulu runtime}, které splňují omezení kvantového hardwaru. Diagram znázorňuje počet fyzických qubitů a modul runtime algoritmu pro každou dvojici {počet qubitů, modul runtime}.
K spuštění časoprostorového diagramu v Jupyter Notebook můžete použít EstimatesOverview
widget z qsharp-widgets
balíčku.
import qsharp
from qsharp_widgets import EstimatesOverview
EstimatesOverview(result, colors=["#1f77b4", "#ff7f0e"], runNames=["e4 Surface Code", "e6 Floquet Code"])
Tip
Podrobnosti odhadu zobrazíte tak, že najedete myší na každý bod v diagramu.
Diagram časoprostoru je zvlášť užitečný při porovnávání více konfigurací target parametrů pro stejný algoritmus.
Poznámka
Pokud při práci s nástrojem pro posouzení prostředků narazíte na nějaký problém, podívejte se na stránku Řešení potíží nebo se obraťte na AzureQuantumInfo@microsoft.com.
Další kroky
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro