Jak používat známé odhady s nástrojem pro odhad prostředků
V tomto článku se dozvíte, jak používat předem vypočítané odhady a optimalizovat provádění odhadu prostředků Azure Quantum.
Informace o tom, jak spustit nástroj pro odhad prostředků, najdete v tématu Různé způsoby spuštění nástroje pro odhad prostředků.
Požadavky
- Nejnovější verze editoru Visual Studio Code nebo otevření editoru VS Code na webu
- Nejnovější verze rozšíření Azure Quantum Development Kit. Podrobnosti o instalaci najdete v tématu Instalace sady QDK ve VS Code.
Pokud chcete v editoru VS Code používat Python, potřebujete také následující:
Nainstalujte nejnovější verzi Pythonu a rozšíření Jupyter pro VS Code.
Nejnovější balíček Azure Quantum
qsharp
.python -m pip install --upgrade qsharp
Použití známých odhadů pro operaci
Pokud už znáte některé odhady operace, například z publikovaného dokumentu, je jedním ze způsobů, jak zkrátit dobu provádění, vzít známé odhady a začlenit je do celkových nákladů programu.
Některé scénáře, ve kterých můžete chtít provést odhad předpočítaných odhadů:
- Chcete vyzkoušet nový algoritmus popsaný v dokumentu a zkontrolovat, jestli zlepšuje výkon programu. Můžete vzít odhady z papíru a začlenit je do programu.
- Chcete vyvíjet program shora dolů, to znamená začít vyvíjet z hlavní funkce a pak implementovat nižší úrovně. Známé odhady můžete použít na nejvyšší úrovni s očekávanými odhady pro celý program. Při pokroku procesu vývoje se nové komponenty začnou volat na známé odhady a očekávané odhady se nahradí skutečnou implementací. Tímto způsobem jsou odhady pro celý program známé předem a při vývoji se zpřesní.
Pomocí této operace můžete AccountForEstimates
Q# předat známé odhady estimátoru prostředků.
Poznámka:
Zvláštní operace je vnitřní operací AccountForEstimates
pro estimátor prostředků. Není podporováno jiným spuštěním targets.
Představte si například následující Q# operaci, která přebírá FactoringFromLogicalCounts
seznam známých odhadů a seznam qubitů.
import Microsoft.Quantum.ResourceEstimation.*;
operation FactoringFromLogicalCounts() : Unit {
use qubits = Qubit[12581];
AccountForEstimates(
[TCount(12), RotationCount(12), RotationDepth(12),
CczCount(3731607428), MeasurementCount(1078154040)],
PSSPCLayout(), qubits);
}
Operace AccountForEstimates
může mít následující parametry:
Funkce s AccountForEstimates |
Popis |
---|---|
AuxQubitCount(amount : Int) |
Vrátí řazenou kolekci členů, kterou lze předat operaci AccountForEstimates , aby bylo možné určit, že počet pomocných qubitů je roven hodnotě amount . |
TCount(amount : Int) |
Vrátí řazenou kolekci členů, kterou lze předat operaci AccountForEstimates , aby bylo možné určit, že počet bran T je roven hodnotě amount . |
MeasurementCount(amount : Int) |
Vrátí řazenou kolekci členů, kterou lze předat operaci AccountForEstimates , aby bylo možné určit, že počet měření je roven hodnotě amount . |
RotationCount(amount : Int) |
Vrátí řazenou kolekci členů, kterou lze předat operaci AccountForEstimates , aby bylo možné určit, že počet rotací je roven hodnotě amount . |
RotationDepth(amount : Int) |
Vrátí řazenou kolekci členů, kterou lze předat operaci AccountForEstimates , aby bylo možné určit, že hloubka otáčení je rovna hodnotě amount . |
CczCount(amount : Int) |
Vrátí řazenou kolekci členů, kterou lze předat operaci AccountForEstimates , aby bylo možné určit, že počet bran CCZ je roven hodnotě amount . |
PSSPCLayout() |
Indikuje rozložení psSPC (Parallel Synthesis Sequential Pauli Computation). Další informace naleznete v tématu arXiv:2211.0769. |
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 se obraťte AzureQuantumInfo@microsoft.comna kontakt .