Share via


Ismert becslések használata az erőforrásbecslővel

Ebből a cikkből megtudhatja, hogyan használhat előre kiszámított becsléseket, és hogyan optimalizálhatja az Azure Quantum Resource Estimator végrehajtását.

Az Erőforrásbecslő futtatásával kapcsolatos további információkért lásd: Az erőforrásbecslő futtatásának különböző módjai.

Előfeltételek

Ha a Pythont a VS Code-ban szeretné használni, a következőkre is szüksége van:

Ismert becslések használata egy művelethez

Ha már tud bizonyos becsléseket egy műveletről, például egy közzétett tanulmányból, a végrehajtási idő csökkentésének egyik módja az ismert becslések felvétele és beépítése a teljes programköltségbe.

Egyes forgatókönyvek, amikor előre kiszámított becslésekből szeretne becslést végezni:

  • Egy tanulmányban ismertetett új algoritmust szeretne kipróbálni annak ellenőrzéséhez, hogy az javítja-e a program teljesítményét. A tanulmányból becsléseket készíthet, és beépítheti őket a programba.
  • Felülről lefelé szeretné fejleszteni a programot, azaz a fő függvényből kell elkezdenie a fejlesztést, majd alacsonyabb szinteket kell implementálnia. Az ismert becsléseket a legfelső szinten használhatja a teljes program várható becsléseivel. A fejlesztési folyamat előrehaladtával az új összetevők elkezdenek meghívni az ismert becsléseket, és a várt becsléseket a tényleges megvalósítás váltja fel. Ily módon a teljes programra vonatkozó becslések előre ismertek, és a fejlesztés előrehaladásával pontosabbak lesznek.

A művelettel AccountForEstimatesQ# ismert becsléseket adhat át az erőforrásbecslőnek.

Megjegyzés

A speciális művelet AccountForEstimates az Erőforrás-becslő belső művelete. Más végrehajtás targetsnem támogatja.

Vegyük például az alábbi Q# nevű FactoringFromLogicalCounts műveletet, amely az ismert becslések listáját és a qubitek listáját tartalmazza.

open Microsoft.Quantum.ResourceEstimation;

operation FactoringFromLogicalCounts() : Unit {
    use qubits = Qubit[12581];

    AccountForEstimates(
        [TCount(12), RotationCount(12), RotationDepth(12),
         CczCount(3731607428), MeasurementCount(1078154040)],
        PSSPCLayout(), qubits);
}

A AccountForEstimates művelet a következő paramétereket hajthatja végre:

Függvények a AccountForEstimates Description
AuxQubitCount(amount : Int) Egy rekordot ad vissza, amely átadható a AccountForEstimates műveletnek annak megadásához, hogy az auxilliáris qubitek száma megegyezik a értékével amount.
TCount(amount : Int) Egy rekordot ad vissza, amely átadható a AccountForEstimates műveletnek annak megadásához, hogy a T kapuk száma megegyezik a amountrel.
MeasurementCount(amount : Int) Egy rekordot ad vissza, amely átadható a AccountForEstimates műveletnek annak megadásához, hogy a mérések száma megegyezik a amountértékével.
RotationCount(amount : Int) Egy rekordot ad vissza, amely átadható a AccountForEstimates műveletnek annak megadásához, hogy a forgatások száma megegyezik a amountkövetkezővel: .
RotationDepth(amount : Int) Egy rekordot ad vissza, amely átadható a AccountForEstimates műveletnek annak megadásához, hogy a forgatási mélység megegyezik a amountkövetkezővel: .
CczCount(amount : Int) Egy rekordot ad vissza, amely átadható a AccountForEstimates műveletnek annak megadásához, hogy a CCZ-kapuk száma megegyezik a értékével amount.
PSSPCLayout() Párhuzamos szintézis szekvenciális Pauli-számítás (PSSPC) elrendezésének jelzése. További információ: arXiv:2211.0769.

Megjegyzés

Ha probléma merül fel az Erőforrásbecslő használata során, tekintse meg a Hibaelhárítás lapot, vagy lépjen kapcsolatba a következővel AzureQuantumInfo@microsoft.com: .

Következő lépések