Lewati ke konten utama

Batas job

Ketika kamu mengirim job ke QPU IBM®, job tersebut pertama-tama dikirim ke layanan validasi job. Layanan ini berusaha memastikan bahwa job dapat berjalan di QPU sehingga kamu tidak perlu menunggu dalam antrean lalu menghadapi kegagalan job. Pemeriksaan ini mencakup penegakan batas-batas yang dijelaskan berikut. Jika batas-batas ini dilampaui, beban kerja tersebut tidak dapat ditangani oleh tumpukan perangkat lunak kuantum dan biasanya akan gagal.

Catatan
  • Beberapa opsi primitif meningkatkan ukuran Circuit. Batas yang dijelaskan diperiksa setelah perkiraan peningkatan ukuran Circuit. Secara khusus, opsi-opsi berikut meningkatkan ukuran Circuit:
  • Batas yang dilaporkan oleh field backend.configuration() yaitu max_shots dan max_experiments tidak lagi relevan atau diterapkan. Field-field ini akan dihapus dalam waktu dekat.
  • Batas-batas ini berlaku per job, bukan per Primitive Unified Bloc (PUB).

Jumlah eksekusi maksimum​

Paling banyak, 10 juta eksekusi diperbolehkan untuk job Sampler (job Estimator dapat dibagi menjadi sub-job yang lebih kecil, sehingga batas ini tidak berlaku). Jumlah eksekusi adalah jumlah Circuit dikalikan jumlah shot, di mana Circuit-Circuit tersebut adalah yang dihasilkan setelah elemen PUB di-broadcast.

Misalnya, jika kamu memiliki PUB dengan satu Circuit dan parameter berbentuk (4, 1), ini akan menghasilkan 4 Circuit. Jika kamu meminta 2.000 shot, maka total jumlah eksekusi adalah 4×2,000=8,0004 \times 2,000 = 8,000.

Perlu diperhatikan bahwa jika kamu mengaktifkan Pauli-twirling dalam job Sampler kamu, total jumlah shot didasarkan pada nilai num_randomizations dan shots_per_randomization. Lihat TwirlingOptions untuk detail lebih lanjut.

Jumlah maksimum instruksi tingkat rendah per qubit​

Layanan mengizinkan hingga 26,8 juta instruksi sistem kontrol per Qubit. Ini memastikan bahwa Circuit pengguna muat dalam memori instruksi sistem kontrol. Contoh di bawah ini menunjukkan cara men-transpile Circuit dan menghitung berapa banyak setiap instruksi yang ada.

Tabel berikut menjelaskan bagaimana sistem menerjemahkan instruksi Circuit instruction set architecture (ISA) ke instruksi sistem kontrol saat menghitung batas ini.

InstruksiJumlah
rz1
delay1
sx2
x2
cx5
cz5
ecr5
measure10
reset17
init50
catatan

Tabel ini menangkap heuristik yang digunakan dalam validasi dan tidak mencerminkan jumlah instruksi yang tepat yang digunakan untuk mengimplementasikan sebuah operasi.

Contoh​

Definisikan Circuit-Circuit, transpile, dan dapatkan hitungan berapa banyak Gate yang akan dijalankan.

from qiskit import QuantumCircuit
from qiskit.transpiler import generate_preset_pass_manager
from qiskit_ibm_runtime import QiskitRuntimeService

num_qubits = 50
ghz = QuantumCircuit(num_qubits)
ghz.h(range(num_qubits))
ghz.cx(0, range(1, num_qubits))
op_counts = ghz.count_ops()

# Choose the least busy backend
service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)

pm = generate_preset_pass_manager(optimization_level=3, backend=backend)
transpiled_ghz = pm.run(ghz)
op_counts = transpiled_ghz.count_ops()

print(f"Post-Transpilation gates: {op_counts}")

Untuk detail lengkap, lihat Transpile terhadap Backend kustom.

Jumlah maksimum Gate satu-Qubit dan dua-Qubit per Circuit​

Jumlah maksimum Gate satu-Qubit adalah sebagai berikut:

  • 30 juta Gate RZ
  • 20 juta Gate SX

Jumlah maksimum Gate dua-Qubit per Circuit adalah lima juta. Ini memastikan bahwa job dapat dimanipulasi dalam batas memori tumpukan perangkat lunak tingkat rendah.

Source: IBM Quantum docs — updated 14 Apr 2026
English version on doQumentation — updated 7 Mei 2026
This translation based on the English version of 11 Mar 2026