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

บทนำ

คุณสามารถทดสอบโปรแกรมควอนตัมของคุณโดยรันบนอุปกรณ์จำลองและสำรวจประสิทธิภาพภายใต้โมเดลสัญญาณรบกวนของอุปกรณ์จริง ซึ่งช่วยให้คุณ debug ก่อนที่จะส่งไปยังหน่วยประมวลผลควอนตัม (QPU)

Quantum simulators ช่วยพัฒนาและทดสอบโปรแกรมก่อนจะปรับแต่งและส่งไปยังฮาร์ดแวร์ควอนตัม Simulators ในเครื่องทำสิ่งนี้ได้ทั้งรวดเร็วและใช้ทรัพยากรอย่างคุ้มค่า

เนื่องจากต้นทุนในการจำลองวงจรควอนตัมแบบคลาสสิกเพิ่มขึ้นแบบ exponential ตามจำนวน Qubit วงจรที่มีมากกว่าประมาณ 50 Qubit โดยทั่วไปจึงไม่สามารถรันบน simulators ได้ สำหรับวงจรดังกล่าว คุณสามารถ:

  • ทดสอบเวอร์ชันที่เล็กลงของวงจรที่สามารถจำลองแบบคลาสสิกได้

  • ปรับแต่งวงจรให้สามารถจำลองแบบคลาสสิกได้ แม้จะมีความแม่นยำน้อยลง

Stabilizer circuits หรือที่เรียกว่า Clifford circuits เป็นเครื่องมือที่มีประโยชน์สำหรับเป้าหมายหลังนี้ วงจรเหล่านี้เป็นกลุ่มวงจรควอนตัมแบบจำกัดที่สามารถจำลองแบบคลาสสิกได้อย่างมีประสิทธิภาพ Simulators เฉพาะทางสามารถจำลอง stabilizer circuits ที่มีหลายพัน Qubit ได้อย่างง่ายดาย ดู การจำลอง stabilizer circuits อย่างมีประสิทธิภาพด้วย Qiskit Aer primitives สำหรับข้อมูลเพิ่มเติม

สำหรับวงจรควอนตัมทั่วไป มีเครื่องมือต่อไปนี้ใช้ทดสอบและ debug โปรแกรมควอนตัมของคุณ:

ข้อพิจารณาด้านฮาร์ดแวร์

หลายปัจจัยส่งผลต่อหน่วยความจำที่การจำลองควอนตัมต้องการ จึงไม่มีข้อกำหนดฮาร์ดแวร์ที่แน่นอนสำหรับการจำลอง แต่มีแนวทางที่คุณสามารถปฏิบัติตามได้

  • ข้อกำหนดเดียวในการรัน Qiskit คือสภาพแวดล้อม Python ที่ทำงานได้ สำหรับรายละเอียด ดูส่วน การรองรับระบบปฏิบัติการ

  • เนื่องจากข้อกำหนดสำหรับการจำลองวงจรควอนตัมเพิ่มขึ้นแบบ exponential ตามจำนวน Qubit ฮาร์ดแวร์ที่มีอยู่จึงจำกัดจำนวน Qubit ที่สามารถจำลองได้ ตัวอย่างเช่น ระบบที่มี RAM 4GB สามารถจำลองได้ประมาณ 27 Qubit

  • หน่วยความจำที่มีมากหรือน้อยกว่าจะไม่ทำให้ผลลัพธ์แม่นยำมากหรือน้อยลง (สมมติว่าผลลัพธ์ถูกส่งคืน) แม้ว่าหน่วยความจำมากขึ้นอาจให้ผลลัพธ์เร็วขึ้นหรือช่วยให้จำลอง Qubit ได้มากขึ้น

  • เพื่อให้ได้ประโยชน์สูงสุดจากฮาร์ดแวร์ของคุณ ให้ใช้การจำลองวงจร stabilizer (Clifford) ในเครื่องเมื่อเป็นไปได้ ดู การจำลอง Clifford ด้วย qiskit-ibm-runtime local testing mode หรือ การจำลอง stabilizer circuits อย่างมีประสิทธิภาพด้วย Qiskit Aer primitives สำหรับตัวอย่าง

  • คุณสามารถเพิ่มพลังการประมวลผลโดยทำตามคำแนะนำเหล่านี้เพื่อ รันด้วย GPU หลายตัว หลาย node หรือทั้งสองอย่าง

ขั้นตอนถัดไป