Langkau ke kandungan utama

Masa pelaksanaan maksimum untuk beban kerja IBM Quantum Compute Service

Untuk memastikan keadilan, terdapat masa maksimum yang dikuatkuasakan oleh perkhidmatan untuk setiap kerja boleh berjalan. Jika sebuah kerja melebihi had masa ini, ia akan dibatalkan secara paksa dan pengecualian RuntimeJobMaxTimeoutError akan dilemparkan. Anda juga boleh menetapkan masa pelaksanaan maksimum pada kerja anda untuk membantu mengawal kos.

nota

Sesi atau kelompok ditamatkan serta-merta apabila had kos dicapai. Sebarang kerja yang sedang berjalan dalam sesi atau kelompok itu akan terus berjalan sehingga selesai, tetapi sebarang kerja yang tertunda akan dibatalkan.

Tetapkan masa pelaksanaan maksimum

Masa pelaksanaan maksimum untuk sebuah kerja ialah nilai yang lebih kecil daripada:

  • Nilai yang ditetapkan untuk max_execution_time

  • Nilai tamat masa maksimum perkhidmatan (tiga jam)

Nilai max_execution_time adalah berdasarkan penggunaan QPU (penggunaan kuantum sahaja), bukan masa jam dinding.

Tetapkan masa pelaksanaan maksimum (dalam saat) pada pilihan kerja, seperti yang ditunjukkan dalam contoh berikut. Lihat panduan Pilihan Estimator, Pilihan Sampler, atau Pilihan Executor untuk maklumat tentang menetapkan pilihan.

from qiskit_ibm_runtime import QiskitRuntimeService
from qiskit_ibm_runtime import EstimatorV2 as Estimator

service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)

estimator = Estimator(mode=backend)

estimator.options.max_execution_time = 2500

Anda juga boleh mengetahui berapa banyak penggunaan yang telah digunakan oleh kerja yang telah selesai dengan mengembalikan metrik kerja seperti berikut:

# Find QPU usage of a specific job
print(f"QPU usage of job {job.job_id()} was {job.metrics()['usage']['quantum_seconds']} seconds")

Masa pelaksanaan maksimum yang dikuatkuasakan oleh perkhidmatan

Perkhidmatan menguatkuasakan had masa pelaksanaan maksimum sebanyak tiga jam untuk memastikan penggunaan peranti yang adil. Jika max_execution_time juga dinyatakan untuk kerja, nilai yang lebih kecil daripada kedua-dua nilai digunakan.

Sebagai contoh, jika kamu menentukan max_execution_time=5000 (lebih kurang 83 minit), maka kerja itu dibatalkan selepas lebih kurang 83 minit, walaupun perkhidmatan boleh membenarkannya berjalan selama tiga jam.

Masa pelaksanaan maksimum kelompok

Apabila kelompok dimulakan, ia diberikan nilai masa hidup maksimum (TTL maksimum). Selepas TTL ini dicapai, kelompok ditamatkan, kerja yang sedang berjalan terus berjalan, dan sebarang kerja dalam barisan yang masih dalam kelompok diletakkan dalam keadaan gagal.

Kelompok juga mempunyai nilai masa hidup interaktif (TTL interaktif) antara kerja yang tidak boleh dikonfigurasi. Jika anda tidak menutup kelompok secara eksplisit, ia akan dinyahaktifkan selepas TTL interaktif tamat dan boleh diaktifkan semula pada bila-bila masa sehingga ia mencapai TTL maksimumnya.

Untuk arahan bekerja dengan nilai-nilai ini, lihat Jalankan kerja dalam kelompok.

Masa pelaksanaan maksimum Session

Apabila Session dimulakan, ia diberikan nilai TTL maksimum yang menentukan berapa lama sesi boleh berjalan. Selepas TTL ini dicapai, Session ditamatkan, kerja yang sedang berjalan terus berjalan, dan sebarang kerja dalam barisan yang masih dalam Session diletakkan dalam keadaan gagal.

Terdapat juga nilai TTL interaktif yang tidak boleh dikonfigurasi. Jika tiada kerja Session dimasukkan ke dalam barisan dalam tempoh itu, Session dinyahaktifkan sementara.

Untuk arahan bekerja dengan nilai-nilai ini, lihat Jalankan kerja dalam Session.

Batasan lain

Pada Pelan Terbuka, anda boleh menggunakan sehingga 10 minit pada QPU per tetingkap bergolek 28 hari. Anda boleh melihat penggunaan instans di halaman Instans.

Langkah seterusnya

Cadangan