Dela via


Så här kör du flera konfigurationer av target parametrar med Resource Estimator

I den här artikeln får du lära dig hur du kör flera konfigurationer av parametrar och jämför dem med hjälp av target Azure Quantum Resource Estimator.

Information om hur du kör Resource Estimator finns i Olika sätt att använda Resource Estimator.

Förutsättningar

Följande krav krävs för att köra Resource Estimator:

Om du vill köra Q# program i Resource Estimator behöver du följande:

Om du vill använda Python i VS Code behöver du också följande:

  • Installera den senaste versionen av Python- och Jupyter-tilläggen för VS Code.

  • Det senaste Azure Quantum-paketet qsharp .

    python -m pip install --upgrade qsharp 
    

Om du vill skicka jobb till Resource Estimator behöver du följande:


Batchbearbetning med resursberäknaren

Med Azure Quantum Resource Estimator kan du skicka jobb med flera konfigurationer av jobbparametrar, även kallade objekt, som ett enda jobb för att undvika att köra flera jobb på samma kvantprogram igen.

Ett resursuppskattningsjobb består av två typer av jobbparametrar:

  • Målparametrar: qubitmodell, QEC-scheman, felbudget, begränsningar på komponentnivå och destillationsenheter.
  • Åtgärdsargument: argument som kan skickas till programmet (om QIR-startpunkten innehåller argument).

Ett objekt består av en konfiguration av jobbparametrar, som är en konfiguration av target parametrar och åtgärdsargument. Flera objekt representeras som en matris med jobbparametrar.

Vissa scenarier där du kanske vill skicka flera objekt som ett enda jobb:

  • Skicka flera target parametrar med samma åtgärdsargument i alla objekt.
  • Skicka flera target parametrar med olika åtgärdsargument i alla objekt.
  • Jämför enkelt flera resultat i tabellformat.
  • Jämför enkelt flera resultat i ett diagram.

Batchbearbetningsjobb med olika språk

Välj önskade flikar för exempel på batchbearbetning med Resource Estimator.

Om du beräknar resurserna i ett Q# program kan du köra flera konfigurationer av target parametrar, även kallat batchbearbetning. Batchbearbetning med Q# kan göras i en Jupyter Notebook i VS Code.

Du kan utföra en batchuppskattning genom att skicka en lista med target parametrar till parametern params för qsharp.estimate funktionen. I följande exempel visas hur du skickar två konfigurationer av target parametrar som ett enda jobb. Den första konfigurationen använder standardparametrarna target och den andra konfigurationen använder qubit_maj_ns_e6 kvantbitsparametern och floquet_code QEC-schemat.

I samma Jupyter Notebook i ditt Q# program lägger du till en ny cell och kör följande kod:

result_batch = qsharp.estimate("RunProgram()", params=
                [{}, # Default parameters
                {
                    "qubitParams": {
                        "name": "qubit_maj_ns_e6"
                    },
                    "qecScheme": {
                        "name": "floquet_code"
                    }
                }])
result_batch.summary_data_frame(labels=["Gate-based ns, 10⁻³", "Majorana ns, 10⁻⁶"])

Du kan också skapa en lista med uppskattningsparametrar target med hjälp av EstimatorParams klassen. Följande kod visar hur du skickar sex konfigurationer av target parametrar som ett enda jobb.

from qsharp.estimator import EstimatorParams, QubitParams, QECScheme

labels = ["Gate-based µs, 10⁻³", "Gate-based µs, 10⁻⁴", "Gate-based ns, 10⁻³", "Gate-based ns, 10⁻⁴", "Majorana ns, 10⁻⁴", "Majorana ns, 10⁻⁶"]

params = EstimatorParams(num_items=6)
params.error_budget = 0.333
params.items[0].qubit_params.name = QubitParams.GATE_US_E3
params.items[1].qubit_params.name = QubitParams.GATE_US_E4
params.items[2].qubit_params.name = QubitParams.GATE_NS_E3
params.items[3].qubit_params.name = QubitParams.GATE_NS_E4
params.items[4].qubit_params.name = QubitParams.MAJ_NS_E4
params.items[4].qec_scheme.name = QECScheme.FLOQUET_CODE
params.items[5].qubit_params.name = QubitParams.MAJ_NS_E6
params.items[5].qec_scheme.name = QECScheme.FLOQUET_CODE

qsharp.estimate("RunProgram()", params=params).summary_data_frame(labels=labels)

Kommentar

Om du stöter på problem när du arbetar med Resursberäknaren kan du gå till sidan Felsökning eller kontakta AzureQuantumInfo@microsoft.com.