Condividi tramite


Come usare stime note con Lo strumento di stima delle risorse

Questo articolo illustra come usare le stime pre-calcolate e ottimizzare l'esecuzione dello strumento di stima delle risorse di Azure Quantum.

Per informazioni su come eseguire Lo strumento di stima delle risorse, vedere Diversi modi per eseguire Lo strumento di stima delle risorse.

Prerequisiti

Se si vuole usare Python in VS Code, sono necessari anche gli elementi seguenti:

  • Installare la versione più recente delle estensioni Python e Jupyter per VS Code.

  • Pacchetto Azure Quantum qsharp più recente.

    python -m pip install --upgrade qsharp 
    

Usare stime note per un'operazione

Se si conoscono già alcune stime per un'operazione, ad esempio da un documento pubblicato, un modo per ridurre il tempo di esecuzione consiste nel prendere le stime note e incorporarle nel costo complessivo del programma.

Alcuni scenari in cui è possibile eseguire una stima da stime precalcose:

  • Si vuole provare un nuovo algoritmo descritto in un documento per verificare se migliora le prestazioni del programma. È possibile prendere stime dal documento e incorporarle nel programma.
  • Si vuole sviluppare il programma dall'alto verso il basso, ovvero iniziare a sviluppare dalla funzione principale e quindi implementare livelli inferiori. È possibile usare le stime note al livello superiore con le stime previste per l'intero programma. Man mano che il processo di sviluppo procede, i nuovi componenti iniziano a chiamare le stime note e le stime previste vengono sostituite dall'implementazione effettiva. In questo modo, le stime per l'intero programma sono note in anticipo e si ottengono più precise man mano che lo sviluppo procede.

È possibile usare l'operazione AccountForEstimatesQ# per passare stime note allo strumento di stima delle risorse.

Nota

L'operazione speciale è un'operazione AccountForEstimates intrinseca per lo strumento di stima delle risorse. Non è supportato da altre esecuzioni targets.

Si consideri ad esempio l'operazione seguente Q# denominata FactoringFromLogicalCounts che accetta un elenco di stime note e un elenco di 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);
}

L'operazione AccountForEstimates può accettare i parametri seguenti:

Funzioni con AccountForEstimates Descrizione
AuxQubitCount(amount : Int) Restituisce una tupla che può essere passata all'operazione AccountForEstimates per specificare che il numero di qubit ausiliari è uguale a amount.
TCount(amount : Int) Restituisce una tupla che può essere passata all'operazione AccountForEstimates per specificare che il numero di cancelli T è uguale a amount.
MeasurementCount(amount : Int) Restituisce una tupla che può essere passata all'operazione AccountForEstimates per specificare che il numero di misure è uguale a amount.
RotationCount(amount : Int) Restituisce una tupla che può essere passata all'operazione AccountForEstimates per specificare che il numero di rotazioni è uguale a amount.
RotationDepth(amount : Int) Restituisce una tupla che può essere passata all'operazione AccountForEstimates per specificare che la profondità di rotazione è uguale a amount.
CczCount(amount : Int) Restituisce una tupla che può essere passata all'operazione AccountForEstimates per specificare che il numero di cancelli CCZ è uguale a amount.
PSSPCLayout() Indicare il layout del calcolo pauli sequenziale di sintesi parallela (PSSPC). Per altre informazioni, vedere arXiv:2211.0769.

Nota

Se si verifica un problema durante l'uso dello strumento di stima delle risorse, consultare la pagina Risoluzione dei problemi o contattare AzureQuantumInfo@microsoft.com.