ข้ามไปยังเนื้อหาหลัก

คำถามที่พบบ่อยเกี่ยวกับโหมดการรัน

โหมดการทดสอบในเครื่องของ qiskit-ibm-runtime รองรับ execution modes ต่างๆ หรือไม่?

โหมดการทดสอบในเครื่องรองรับ syntax สำหรับ execution modes ต่างๆ แต่เนื่องจากไม่มีการจัดตารางเวลาเมื่อทดสอบในเครื่อง โหมดต่างๆ จะถูกละเว้น

How many jobs can run in parallel for a specific backend?

จำนวน job ที่รันพร้อมกันขึ้นอยู่กับระดับ parallelism ที่กำหนดค่าสำหรับ backend ซึ่งคือห้าสำหรับ backend ส่วนใหญ่ในปัจจุบัน

การรายงาน usage สำหรับ job ที่ล้มเหลวหรือถูกยกเลิกเป็นอย่างไร?

ดูส่วน Job ที่ล้มเหลวและถูกยกเลิก ในหน้า Execution modes

Sessions

เกิดอะไรขึ้นกับ job ของฉันหาก session ถูกปิด?

หากคุณใช้คลาส Session ใน qiskit-ibm-runtime:

  • Session.close() หมายความว่า session ไม่รับ job ใหม่อีกต่อไป แต่ job ที่มีอยู่รันจนเสร็จ

  • Session.cancel() ยกเลิก job ที่รอดำเนินการทั้งหมดใน session

หากคุณใช้ REST API โดยตรง:

  • PATCH /sessions/{id} พร้อม accepting_jobs=False หมายความว่า session ไม่รับ job ใหม่อีกต่อไป แต่ job ที่มีอยู่รันจนเสร็จ

  • DELETE /sessions/{id}/close ยกเลิก job ที่รอดำเนินการทั้งหมดใน session

หากฉันใช้ session mode และคาดว่าการทดลองของฉันจะใช้เวลาหลายชั่วโมง มีวิธีขอให้เกิด calibrations หรือไม่?

ไม่ การ calibration ตามความต้องการไม่พร้อมใช้งาน

มี interactive timeout (interactive TTL) ใน session mode หรือไม่?

มี สิ่งนี้ช่วยลดค่าใช้จ่ายที่ไม่ต้องการหากผู้ใช้ลืมปิด session

Can I change the interactive TTL or the maximum TTL of a session?

ไม่สามารถเปลี่ยนค่า interactive TTL ได้ สามารถเปลี่ยนค่า maximum TTL ของ session ได้ (ดู ระบุความยาวของ session) แต่ต้องน้อยกว่าค่าสูงสุดที่ระบบกำหนด ติดต่อผู้ดูแลระบบให้ติดต่อ IBM support หากต้องการ interactive TTL หรือ system maximum TTL ที่แตกต่างออกไป

session usage ส่งผลต่อสมาชิก IBM Quantum Network ที่ไม่ได้ถูกเรียกเก็บเงินตาม usage อย่างไร?

สมาชิก IBM Quantum Network ได้รับ capacity ที่สำรองไว้บน IBM Quantum® QPUs Usage จะถูกหักจาก capacity นี้ และ instance ที่มี capacity น้อยกว่าจะมีเวลาในคิวที่นานกว่า

ฉันได้ parallelism เท่ากันใน session mode เหมือนที่ได้กับ batch mode หรือไม่?

ใช่ หากคุณส่ง job หลายตัวพร้อมกันใน session job เหล่านี้จะรันพร้อมกัน

Can sessions be interrupted by QPU upgrades or calibrations?

ไม่ Session รันในโหมด dedicated ซึ่งหมายความว่าผู้ใช้มีสิทธิ์เข้าถึง backend อย่างเต็มที่ Session ไม่ถูกขัดจังหวะโดย calibrations หรือการอัปเกรดซอฟต์แวร์

Is compilation time counted as usage in session mode?

ใช่ ใน session mode usage คือเวลา wall clock ที่ QPU ผูกพันกับ session มันเริ่มต้นเมื่อ session job แรกเริ่มต้นและสิ้นสุดเมื่อ session ไม่ได้ใช้งาน ถูกปิด หรือเมื่อ job สุดท้ายเสร็จสมบูรณ์ ขึ้นอยู่กับว่าอะไรเกิดขึ้นหลังสุด ดังนั้น usage ยังคงสะสมหลังจาก session สิ้นสุดหาก QPU ยังคงรัน job อยู่ นอกจากนี้ เวลาหลังจาก job เสร็จสมบูรณ์ขณะที่ QPU รอ session job อื่น (the interactive TTL) นับเป็น usage นี่คือเหตุผลที่คุณควรมั่นใจว่า session ถูกปิดทันทีที่คุณส่ง job เสร็จ

Batch

มี job กี่ตัวที่รันพร้อมกันใน batch mode?

จำนวน job ที่รันพร้อมกันขึ้นอยู่กับระดับ parallelism ที่กำหนดค่าสำหรับ backend ซึ่งคือห้าสำหรับ backend ส่วนใหญ่ อย่างไรก็ตาม จำนวน job พร้อมกันใน active batch อาจน้อยกว่าเพราะอาจมี job อื่นที่กำลังรันอยู่แล้วเมื่อ batch ทำงาน

การรัน _N_ PUBs ใน job mode ต่างจากการรัน _N_ single-PUB jobs ใน batch mode อย่างไร?

ความแตกต่างหลักคือการแลกเปลี่ยนระหว่างเวลาและค่าใช้จ่าย:

Batch mode:

  • เวลารันทั้งหมดน้อยกว่าเพราะ classical processing อาจรันพร้อมกัน

  • มี overhead เล็กน้อยสำหรับการรัน job แต่ละตัว ดังนั้นคุณจ่ายมากกว่าเล็กน้อยสำหรับ batched jobs เมื่อเทียบกับการรัน Circuit ทั้งหมดใน job เดียว

  • เนื่องจาก batch mode ไม่ให้สิทธิ์เข้าถึง backend แบบ exclusive job ใน batch อาจรันพร้อมกับ job ของผู้ใช้รายอื่นหรือ calibration jobs

  • หาก job บางตัวล้มเหลว คุณยังได้รับผลลัพธ์จาก job ที่เสร็จสมบูรณ์

  • คุณสามารถดำเนินการกลางใน batch workload ตามผลลัพธ์ของ job ที่เสร็จสมบูรณ์ ตัวอย่างเช่น คุณสามารถยกเลิก job ที่เหลือหากผลลัพธ์เริ่มต้นดูไม่ถูกต้อง

Job mode:

  • เวลารันทั้งหมดน่าจะสูงกว่าเพราะไม่มี parallelism

  • คุณไม่จ่ายค่า overhead ต่อ job พิเศษที่เกี่ยวข้องกับ batch workloads

  • Circuit ทั้งหมดของคุณจะรันร่วมกัน

  • หาก job เดียวนี้ล้มเหลว คุณไม่ได้รับผลลัพธ์บางส่วน

  • Job ของคุณอาจถึงขีดจำกัดหากมี Circuit มากเกินไปหรือ Circuit ใหญ่เกินไป

โดยทั่วไป หากแต่ละ job ของคุณใช้ QPU time น้อยกว่าหนึ่งนาที ให้พิจารณารวมเป็น job ที่ใหญ่กว่า (ใช้ได้กับทุก execution modes)

How many jobs I can submit in a batch?

แม้จะไม่มีขีดจำกัดจำนวน job ที่คุณสามารถส่งใน batch แต่มีเวลาสูงสุดที่เกี่ยวข้องกับ batch นั่นคือ เมื่อเวลา wall clock ของ batch (ซึ่งเริ่มต้นเมื่อ batch job แรกเริ่มรัน) เกินเวลาสูงสุดที่ระบบกำหนด batch จะไม่รับ job ใหม่ และ job ที่อยู่ในคิวแต่ยังไม่รันจะถูกยกเลิก นอกจากนี้ มีขีดจำกัดว่า job ของคุณสามารถใช้ usage เท่าไรตาม plan ของคุณ ใช้เมธอด batch.details() และมองหาค่า max_time เพื่อกำหนดเวลาสูงสุดที่เกี่ยวข้องกับ batch

When would my batch mode jobs run in parallel with other users' jobs?

ระดับ parallelism ที่กำหนดค่าสำหรับ backend เรียกอีกว่า "execution lanes" หากมีหนึ่งหรือมากกว่า execution lanes ว่างอยู่ และ batch jobs ของคุณเป็นคิวถัดไปที่จะรัน scheduler จะเริ่ม job เพียงพอเพื่อเติม lanes นั้น ในทำนองเดียวกัน หาก batch ของคุณมี job ไม่เพียงพอที่จะเติม lanes scheduler จะเริ่ม job ของผู้ใช้รายอื่น

ตัวอย่าง: backend ที่คุณเลือกมีห้า execution lanes และสองในนั้นกำลังถูกใช้โดย job ของผู้ใช้รายอื่น batch ของ job ของคุณหกตัวเป็นคิวถัดไปที่จะรัน

เนื่องจากมี lanes ว่างสามเลน scheduler จะเริ่มสามในหก batch jobs ของคุณ มันยังคงเริ่ม job ใน batch ของคุณเมื่อ job เสร็จสมบูรณ์และ execution lanes ว่าง หาก lane ว่างและไม่มี job เหลือใน batch ของคุณ scheduler จะเริ่ม job ถัดไปในคิว

job ทั้งหมดใน batch ของฉันจำเป็นต้องรอในคิวหรือไม่?

เนื่องจาก QPUs เป็นทรัพยากรที่มีจำกัดและแชร์กัน job ทั้งหมดจำเป็นต้องรอในคิว อย่างไรก็ตาม เมื่อ job แรกใน batch ของคุณเริ่มรัน job อื่นทั้งหมดใน batch นั้นจะข้ามไปยังด้านหน้าของคิวอย่างมีนัยสำคัญและได้รับการจัดลำดับความสำคัญโดย scheduler

Does a batch end automatically when the last associated job ends?

ใช่ อย่างไรก็ตาม มี overhead เล็กน้อยที่เกี่ยวข้องกับการตรวจจับอัตโนมัตินี้ ดังนั้นคุณควรปิด batch และ session ของคุณเสมอ

batches สามารถถูกขัดจังหวะโดย calibrations หรือการอัปเกรดซอฟต์แวร์ได้หรือไม่

ใช่ Batch workloads อาจถูกขัดจังหวะโดย calibrations หรือการอัปเกรดซอฟต์แวร์

เวลา compilation นับเป็น usage ใน batch mode หรือไม่?

ไม่ ใน batch mode มีเพียงเวลาที่ใช้บน quantum hardware เท่านั้นที่นับเป็น usage