Masa pelaksanaan maksimum untuk beban kerja Qiskit Runtime
Untuk memastikan keadilan, terdapat masa maksimum yang dikira oleh perkhidmatan untuk setiap kerja Qiskit Runtime 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.
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 kerja yang ditentukan oleh perkhidmatan
Nilai max_execution_time adalah berdasarkan penggunaan QPU, 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 dikira oleh perkhidmatan
Perkhidmatan mengira nilai tamat masa kerja yang sesuai berdasarkan Circuit input dan pilihan. Tamat masa yang dikira oleh perkhidmatan ini dihadkan pada 3 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 anda menyatakan max_execution_time=5000 (kira-kira 83 minit), tetapi perkhidmatan menentukan ia tidak sepatutnya mengambil masa lebih daripada 5 minit (300 saat) untuk melaksanakan kerja, maka kerja itu dibatalkan selepas 5 minit.
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
- Input kepada kerja tidak boleh melebihi 50MB dalam saiz.
- 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
- Penggunaan beban kerja.
- Semak petua-petua ini: Minimumkan masa jalan kerja.