target パラメーターの複数の構成を Resource Estimator と比較する方法
この記事では、target パラメーターの複数の構成を同時に実行し、Azure Quantum Resource Estimatorを使用して比較する方法について説明します。
Azure Quantum Resource Estimator を使用すると、1 つのジョブとして
1 つのジョブは、複数の項目または target パラメーターの構成で構成できます。 複数の項目を 1 つのジョブとして実行するシナリオ:
- すべての項目で同じ操作引数と共に複数の target パラメーターを使用する。
- すべての項目で、target の複数のパラメーターを 異なる の操作引数と共に実行します。
- 複数の結果を表形式で簡単に比較できます。
- グラフ内の複数の結果を簡単に比較できます。
リソース推定ツールを実行する方法については、「 リソース推定ツールを使用する方法を参照してください。
前提条件
最新バージョンの Visual Studio Code または VS Code on the Web を開きます。
Quantum Development Kit 拡張機能の最新バージョン。 インストールの詳細については、「QDK 拡張機能を設定する」を参照してください。
最新の Azure Quantum
qsharp
パッケージ。python -m pip install --upgrade qsharp
Resource Estimator を使用した複数の構成の実行
qsharp.estimate
関数の params
パラメーターに target パラメーターの一覧を渡すことができます。
次の例では、target パラメーターの 2 つの構成を 1 つのジョブとして実行する方法を示します。 最初の構成では既定の target パラメーターが使用され、2 つ目の構成では qubit_maj_ns_e6
量子ビット パラメーターと floquet_code
QEC スキームが使用されます。
Q# プログラムと同じ Jupyter Notebook に新しいセルを追加し、次のコードを実行します。
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⁻⁶"])
target クラスを使用して、推定EstimatorParams
パラメーターの一覧を作成することもできます。 次のコードは、target パラメーターの 6 つの構成を 1 つのジョブとしてバッチ処理する方法を示しています。
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)
Note
リソース推定ツールの使用中に問題が発生した場合は、 トラブルシューティング ページを確認するか、 AzureQuantumInfo@microsoft.comにお問い合わせください。