ดูรายละเอียด Backend
Package versions
The code on this page was developed using the following requirements. We recommend using these versions or newer.
qiskit-ibm-runtime~=0.46.1
หน้านี้อธิบายวิธีค้นหาข้อมูลเกี่ยวกับ Backend ที่มีให้ใช้งาน
แสดงรายการหรือกรอง Backend
แสดงรายการ Backend ที่มีให้ใช้งาน
คุณสามารถใช้ Qiskit หรือ IBM Quantum Platform เพื่อดูรายการ Backend ที่มีให้ใช้งาน หรือค้นหา Backend เฉพาะได้
QPU ที่โฮสต์บน IBM Cloud® มีชื่อที่ขึ้นต้นด้วย ibm_* QPU ทุกตัวได้รับชื่อเมือง เช่น ibm_kingston ชื่อนี้ไม่ได้บ่งบอกว่า QPU จริงๆ อยู่ที่ไหน
- View backends with Qiskit
- View backends on IBM Quantum Platform
ใช้เมธอด QiskitRuntimeService.backends() ตามที่แสดงในบล็อกโค้ดถัดไป เมธอดนี้จะ return รายการ instance ของ IBMBackend
ในการรันโค้ดต่อไปนี้ ตรวจสอบให้แน่ใจว่าได้รับรองความถูกต้องกับ service แล้ว ดู ตั้งค่าบัญชี IBM Cloud ของคุณ สำหรับรายละเอียดเพิ่มเติม
ในการค้นหา Backend เฉพาะ ใช้เมธอด QiskitRuntimeService.backend() (โปรดสังเกตว่าเป็นรูปเอกพจน์: backend) ซึ่งรับชื่อของ Backend เป็น input parameter และ return instance ของ IBMBackend ที่แทน Backend นั้น:
ในการดู Backend ที่คุณมีสิทธิ์เข้าถึง ไปที่รายการ Backend บน หน้า Compute resources (โปรดทราบว่า region ที่เลือกอาจส่งผลต่อ QPU ที่แสดง) คลิกไอคอนตัวกรองและเลือก "All my instances" หรือชื่อ instance เฉพาะเพื่อดู QPU ที่มีให้ใช้งาน
# Added by doQumentation — required packages for this notebook
!pip install -q qiskit-ibm-runtime
# Initialize your account
from qiskit_ibm_runtime import QiskitRuntimeService
service = QiskitRuntimeService()
service.backends()
[<IBMBackend('ibm_boston')>,
<IBMBackend('ibm_pittsburgh')>,
<IBMBackend('ibm_fez')>,
<IBMBackend('ibm_marrakesh')>,
<IBMBackend('ibm_kingston')>,
<IBMBackend('ibm_miami')>]
service.backend("ibm_fez")
<IBMBackend('ibm_fez')>
# Optionally pass in an instance, region, or both, to
# further filter the backends.
service = QiskitRuntimeService()
service.backends(simulator=False, operational=True, min_num_qubits=100)
[<IBMBackend('ibm_boston')>,
<IBMBackend('ibm_pittsburgh')>,
<IBMBackend('ibm_fez')>,
<IBMBackend('ibm_marrakesh')>,
<IBMBackend('ibm_kingston')>,
<IBMBackend('ibm_miami')>]
หากคุณลงชื่อเข้าใช้ instance หรือ region เฉพาะ หรือหากคุณเริ่มต้น service ด้วย instance หรือ region เฉพาะโดยใช้ QiskitRuntimeService() ระบบจะ return เฉพาะ Backend ที่มีให้ใช้งานใน instance หรือ region นั้น
กรอง Backend
- Filter by properties with Qiskit
- Filter by properties on IBM Quantum Platform
คุณสามารถกรอง Backend ที่มีให้ใช้งานตาม configuration หรือ status สำหรับตัวกรองทั่วไป ตั้งค่า argument filters เป็นฟังก์ชันที่รับ Backend object และ return True หากตรงตามเกณฑ์ของคุณ ดู เอกสาร API สำหรับรายละเอียดเพิ่มเติม
โค้ดต่อไปนี้จะ return เฉพาะ Backend ที่ตรงตามเกณฑ์เหล่านี้และมีให้ใช้งาน ใน instance ที่เลือกอยู่ในปัจจุบัน:
- เป็นอุปกรณ์ quantum จริง (
simulator=False) - ใช้งานได้อยู่ (
operational=True) - มีอย่างน้อยหนึ่งร้อย Qubit (
min_num_qubits=100)
เมธอดที่คล้ายกันคือ QiskitRuntimeService.least_busy() ซึ่งรับตัวกรองเดียวกับ backends() แต่ return Backend ที่ตรงกับตัวกรองและมีจำนวนงานที่รอในคิวน้อยที่สุด:
ในการดู Backend ที่คุณมีสิทธิ์เข้าถึง ดูตารางบน หน้า Compute resources คลิกไอคอนตัวกรองเพื่อดูตัวเลือกตัวกรอง คุณสามารถกรองตาม processor type และ status โปรดทราบด้วยว่าคุณสามารถจัดเรียงตารางตามคอลัมน์ใดก็ได้โดยวางเมาส์เหนือชื่อคอลัมน์ แล้วคลิกลูกศรที่ปรากฏขึ้น
service.least_busy(operational=True, min_num_qubits=100)
<IBMBackend('ibm_fez')>
ข้อมูล Backend แบบ Static
ข้อมูลบางอย่างเกี่ยวกับ Backend ไม่เปลี่ยนแปลงบ่อย เช่น ชื่อ เวอร์ชัน จำนวน Qubit ที่มี processor type (ชื่อตระกูล bird ซึ่งบ่งบอกถึง topology และจำนวน Qubit โดยประมาณ) และประเภทของคุณสมบัติที่รองรับ ข้อมูลนี้มีให้เป็น attributes ของ object backend สำหรับรายการ attributes ทั้งหมด ดู เอกสาร API ของ IBMBackend ดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดเวอร์ชันในส่วน การกำหนดเวอร์ชัน QPU ด้านล่าง
region ของ Backend (ตำแหน่งของศูนย์ข้อมูลที่ข้อมูลและการทดลองของคุณจะถูกโฮสต์และประมวลผล) แสดงอยู่ในการ์ดข้อมูลรายละเอียดบน หน้า Compute resources บน IBM Quantum Platform
- View backend information with Qiskit
- View backend information on IBM Quantum Platform
ไปที่ หน้า Compute resources เพื่อดูตาราง QPU ทั้งหมด แล้วคลิกชื่อ QPU ใดก็ได้เพื่อเปิดการ์ดข้อมูลรายละเอียด ดูข้อมูล Backend ในส่วน Details ของการ์ด
backend = service.backend("ibm_fez")
print(
f"Name: {backend.name}\n"
f"Version: {backend.backend_version}\n"
f"No. of qubits: {backend.num_qubits}\n"
f"Processor type: {backend.processor_type}\n"
)
Name: ibm_fez
Version: 1.3.37
No. of qubits: 156
Processor type: {'family': 'Heron', 'revision': '2'}
การกำหนดเวอร์ชัน QPU
QPU แต่ละตัวมีหมายเลขเวอร์ชันในรูปแบบ X.Y.Z (major.minor.revision) Circuit ที่คอมไพล์สำหรับหมายเลขเวอร์ชันที่กำหนดรับประกันว่าจะทำงานบน QPU นั้น หากหมายเลข revision เปลี่ยนแปลง Circuit จะยังคงทำงานได้ต่อ หากหมายเลข major หรือ minor เปลี่ยนแปลง ไม่รับประกันว่า Circuit จะทำงานได้ แม้ว่าอาจเป็นเช่นนั้นก็ตาม
หมายเลขเวอร์ชัน revision จะเพิ่มขึ้นสำหรับการแก้ไขที่ไม่ทำให้ Circuit ที่คอมไพล์ไว้แล้วหยุดทำงาน
ตัวอย่างโค้ดก่อนหน้าใน ส่วนนี้ แสดงวิธีค้นหาเวอร์ชันของ Backend บน IBM Quantum Platform คุณสามารถดูเวอร์ชันในการ์ดข้อมูลรายละเอียดของ QPU (คลิกชื่อ QPU ในตาราง Compute resources เพื่อเปิดการ์ด)
เงื่อนไขที่หมายเลขเวอร์ชันหรือ revision อาจเปลี่ยนแปลงแสดงไว้ในตารางต่อไปนี้
| เวอร์ชัน Major | เวอร์ชัน Minor | เวอร์ชัน Revision |
|---|---|---|
| การเปลี่ยน Sample | รอบการอุ่นเครื่อง / ทำให้เย็น | การอัปเดตซอฟต์แวร์ QPU |
| การเปลี่ยนแปลงครั้งใหญ่ในอุปกรณ์อิเล็กทรอนิกส์ควบคุม | การเปลี่ยนอุปกรณ์อิเล็กทรอนิกส์บางส่วน หากการเปลี่ยนทดแทนส่งผลต่อการทำงานอย่างเห็นได้ชัด | การสอบเทียบด้วยตนเองเพื่อปรับปรุง fidelities |
| การย้าย QPU ไปยังตำแหน่งใหม่ หากส่งผลให้พฤติกรรมเปลี่ยนแปลงอย่างมีนัยสำคัญ | การลด Gate ในช่วงเวลาหนึ่งเนื่องจากปัญหาการสอบเทียบ และไม่สามารถแก้ไขได้ง่ายในซอฟต์แวร์ | การเปลี่ยนแปลงอุปกรณ์อิเล็กทรอนิกส์เล็กน้อยที่ไม่ส่งผลต่อการทำงาน |
| การเปลี่ยนทิศทางของ Gate CNOT |
คำสั่งที่รองรับ
ตระกูล processor แต่ละตระกูลรองรับชุดคำสั่งจำกัดโดยกำเนิด ชุดนี้รวมถึง single- และ two-qubit gates รวมถึงการดำเนินการที่ไม่ใช่ unitary เช่น measure และ reset Gate ทุกตัวใน Circuit ต้องถูกแปล (โดย Transpiler) ไปเป็นองค์ประกอบของชุดคำสั่งที่รองรับของ QPU ก่อนที่จะรันบน QPU ได้
คุณสามารถดูชุดคำสั่งที่รองรับสำหรับ QPU ด้วย Qiskit หน้า Compute resources ของ IBM Quantum Platform แสดงเฉพาะ unitary gates ที่รองรับ (basis gates) สำหรับ QPU
- Find supported instructions with Qiskit
- Find basis gates on IBM Quantum Platform
ไปที่ หน้า Compute resources เพื่อดูตาราง QPU ทั้งหมด แล้วคลิกชื่อ QPU ใดก็ได้เพื่อเปิดการ์ดข้อมูลรายละเอียด basis gates สำหรับ QPU นั้นแสดงอยู่ในส่วน Details
ตารางคำสั่งที่รองรับ
| หมวดหมู่การดำเนินการ | ชื่อ |
|---|---|
| Single-qubit gates | RZ, SX, X, ID, delay |
| Two-qubit gates | CZ, ECR |
| Fractional gates | RX (single-qubit), RZZ (two-qubit) |
| Non-unitary instructions | measure, reset, measure_*, delay |
| Control flow | if_else (classical feedforward) |
from qiskit_ibm_runtime import QiskitRuntimeService
service = QiskitRuntimeService()
backend = service.backend("ibm_kingston")
print(f"Backend: {backend.name}")
print(f" Processor type: {backend.processor_type}")
print(f" Supported instructions: {backend.supported_instructions}")
Backend: ibm_kingston
Processor type: {'family': 'Heron', 'revision': '2'}
Supported instructions: ['cz', 'id', 'delay', 'measure', 'measure_2', 'reset', 'rz', 'sx', 'x', 'if_else', 'store']
ข้อมูล Backend แบบ Dynamic
Backend ยังมีคุณสมบัติที่เปลี่ยนแปลงทุกครั้งที่มีการสอบเทียบ เช่น อายุการใช้งานของ Qubit และอัตราข้อผิดพลาดของการดำเนินการ คุณสมบัติของ Backend จะอัปเดตหลังจากลำดับการสอบเทียบเสร็จสิ้น คุณสมบัติเหล่านี้สามารถใช้เมื่อ optimize วงจร quantum หรือเพื่อสร้างโมเดลเสียงสำหรับ classical simulator ดู คู่มือ Calibration jobs สำหรับข้อมูลเพิ่มเติม
บน IBM Quantum Platform คุณสามารถดาวน์โหลดข้อมูลการสอบเทียบเป็นไฟล์ CSV คลิก QPU บน หน้า Compute resources เพื่อดูการ์ดข้อมูลรายละเอียด แล้วคลิกไอคอนดาวน์โหลดที่มุมขวาบนของส่วนข้อมูลการสอบเทียบ
คุณสามารถดึงข้อมูลคุณสมบัติ Backend ในอดีตใน Qiskit ด้วยโค้ดต่อไปนี้:
backend.properties(datetime=<datetime>)
คุณสมบัติของ Qubit
ข้ามไปยังรายการคุณสมบัติของ Qubit
backend.properties().qubit_property() จะ return ข้อมูลเกี่ยวกับ attribute ทางกายภาพของ Qubit มี dictionary ของคุณสมบัติต่างๆ ของ Qubit แต่ละอย่างคู่กับค่าและ timestamp ของการสอบเทียบล่าสุด
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแสดงรายการคุณสมบัติทั้งหมด หรือดึงคุณสมบัติเฉพาะของ Qubit ที่เลือก
ดูคุณสมบัติของ Qubit
T1 (Relaxation time)
เวลา แสดงถึงระยะเวลาเฉลี่ยที่ Qubit อยู่ใน excited state ก่อนสลายตัวไปยัง ground state เนื่องจาก energy relaxation พารามิเตอร์นี้ใช้เพื่อระบุลักษณะพฤติกรรม energy relaxation ของ Qubit และแสดงเป็นหน่วยวินาที (s)
| View with Qiskit | backend.properties().t1(<qubit>) |
|---|---|
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ เมนูดรอปดาวน์ Qubit; ดูค่า median ในส่วน Details |
T2 (Dephasing time)
เวลา แสดงถึงระยะเวลาที่ Qubit รักษา phase coherence ของ superposition ระหว่างสถานะ และ รวมทั้ง energy relaxation และกระบวนการ pure dephasing ให้ข้อมูลเชิงลึกเกี่ยวกับคุณสมบัติ coherence ของ Qubit รายงานจากลำดับ Hahn echo
| View with Qiskit | backend.properties().t2(<qubit>) |
|---|---|
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ เมนูดรอปดาวน์ Qubit; ดูค่า median ในส่วน Details |
# fundamental physical properties of qubit 1
backend = service.backend("ibm_fez")
backend.qubit_properties(1)
QubitProperties(t1=0.00018243651954462543, t2=0.00020405172321184844, frequency=None)
# Retrieve qubit properties
qubit_index = 126 # Replace with your qubit index
qubit_props = backend.properties().qubit_property(qubit_index)
# Access specific properties
t1 = qubit_props.get("T1", (None,))[0]
t2 = qubit_props.get("T2", (None,))[0]
readout_error = qubit_props.get("readout_error", (None,))[0]
prob_meas0_prep1 = qubit_props.get("prob_meas0_prep1", (None,))[0]
prob_meas1_prep0 = qubit_props.get("prob_meas1_prep0", (None,))[0]
readout_length = qubit_props.get("readout_length", (None,))[0]
print(f"Qubit {qubit_index} Properties:")
print(f" T1: {t1} seconds")
print(f" T2: {t2} seconds")
print(f" Readout Error: {readout_error}")
print(f" P(0 | 1): {prob_meas0_prep1}")
print(f" P(1 | 0): {prob_meas1_prep0}")
print(f" Readout Length: {readout_length} seconds")
Qubit 126 Properties:
T1: 0.0001248478211384773 seconds
T2: 7.96150033446492e-05 seconds
Readout Error: 0.0244140625
P(0 | 1): 0.029052734375
P(1 | 0): 0.019775390625
Readout Length: 1.56e-06 seconds
คุณสมบัติของคำสั่ง
ข้ามไปยังรายการคุณสมบัติของคำสั่ง
Attribute backend.target เป็น object qiskit.transpiler.Target: object ที่มีข้อมูลทั้งหมดที่จำเป็นสำหรับการ transpile Circuit สำหรับ Backend นั้น ซึ่งรวมถึงข้อผิดพลาดและระยะเวลาของคำสั่ง ตัวอย่างเช่น cell ต่อไปนี้ดึงคุณสมบัติสำหรับ Gate cz ที่ทำงานระหว่าง Qubit 1 และ 0
cell ต่อไปนี้แสดงคุณสมบัติสำหรับการดำเนินการ measurement (รวมถึง readout error) บน Qubit 0
ดูคุณสมบัติของคำสั่ง
prob-meas0-prep1
พารามิเตอร์นี้บ่งชี้ความน่าจะเป็นของการวัด Qubit ในสถานะ 0 เมื่อตั้งใจเตรียมในสถานะ แสดงเป็น สะท้อนถึงข้อผิดพลาดในการเตรียมสถานะและการวัด (SPAM) โดยเฉพาะ measurement errors ใน superconducting qubits
| View with Qiskit | backend.properties().qubit_property(<qubit>, 'prob_meas0_prep1') |
|---|---|
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ เมนูดรอปดาวน์ Qubit |
prob-meas1-prep0
ในทำนองเดียวกัน พารามิเตอร์นี้แสดงความน่าจะเป็นของการวัด Qubit ในสถานะ 1 เมื่อตั้งใจเตรียมในสถานะ แสดงเป็น เหมือน prob_meas0_prep1 สะท้อนถึงข้อผิดพลาด SPAM โดย measurement errors เป็นตัวแปรหลักใน superconducting qubits
| View with Qiskit | backend.properties().qubit_property(<qubit>, 'prob_meas0_prep0') |
|---|---|
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ เมนูดรอปดาวน์ Qubit |
2Q error (Heron and Nighthawk: CZ, Eagle: ECR)
ข้อผิดพลาด two-qubit ต่อ edge จากชุดการวัดเดียวกันที่ใช้คำนวณ 2Q median 2Q error (best) หมายถึงข้อผิดพลาด two-qubit ต่ำสุดบน edge ใดก็ตามของอุปกรณ์ จากชุดการวัดชุดเดียวกันด้วย
| View with Qiskit | backend.target['<instruction>'][<qubit 1>, <qubit 2>] |
|---|---|
| View on IBM Quantum Platform | ส่วนการสอบเทียบ: วางเมาส์เหนือการเชื่อมต่อ Qubit ใน Map view หรือดูค่าใน Table view ภายใต้คอลัมน์ CZ error (Heron and Nighthawk) หรือ ECR error (Eagle); ดูค่า 2Q error (best) ในส่วน Details |
Median 2Q error (Heron: CZ, Eagle: ECR)
Average gate fidelity ของ two-qubit operation จาก randomized benchmarking วัดใน "isolation": ชุดที่มีระยะห่างขั้นต่ำสอง Qubit ระหว่าง edges randomized benchmarking นี้ใช้เลเยอร์สลับกันของ single-qubit Cliffords และ two-qubit gates ดังนั้นค่าข้อผิดพลาด 2Q สุดท้ายรวมถึงข้อผิดพลาดของเลเยอร์ single-qubit Cliffords
| Calculate with Qiskit | ทำตามตัวอย่างใน notebook ของ Qiskit Community GitHub |
|---|---|
| View on IBM Quantum Platform | ส่วน Details; ดูข้อมูลต่อ edge ในส่วนข้อมูลการสอบเทียบด้วย |
2Q error (layered)
ค่าเฉลี่ยของข้อผิดพลาดต่อ layered gate (EPLG) ในลูกโซ่ 100 Qubit EPLG เฉลี่ยวัดค่าเฉลี่ยของข้อผิดพลาด Gate ในลูกโซ่แบบเลเยอร์ของ Qubit (=100 ที่นี่) มาจากปริมาณที่คล้ายกันที่เรียกว่า layer fidelity (LF) โดย EPLG = 4/5(1-LF) และ layer fidelity คือ process fidelity ของลูกโซ่แบบเลเยอร์ของ Qubit สำหรับรายละเอียด ดูบทความ Benchmarking quantum processor performance at scale โปรดทราบว่าในบทความ EPLG ถูกกำหนดสำหรับ process error แต่เพื่อความสอดคล้องกับข้อผิดพลาด Gate ที่รายงานแยกกัน จึงอ้างอิงสำหรับ average gate error ดังนั้นจึงมีตัวประกอบ 4/5
บน IBM Quantum Platform การ์ดข้อมูลรายละเอียดของแต่ละ QPU มีส่วนที่เรียกว่า Two-qubit gate error (layered) ซึ่งให้ view ที่ขยายของ two-qubit gate error (layered) ต่ำสุดที่วัดเป็นฟังก์ชันของจำนวน Qubit ในลูกโซ่ ค่าสุดท้ายที่ความยาวลูกโซ่ 100 คือค่าที่นำเสนอในส่วน Details ในทางปฏิบัติ ลูกโซ่ 100 Qubit จำนวนหก (คัดเลือกล่วงหน้าตามประสิทธิภาพที่คาดว่าเหมาะสมที่สุด) จะถูกวัด และค่าที่รายงานสำหรับจำนวน Qubit N คือข้อผิดพลาดต่ำสุดที่พบใน subset ความยาว N ที่ค้นหาจากลูกโซ่ 100 Qubit ทั้งหก
| Calculate with Qiskit | ทำตามตัวอย่างใน notebook ของ Qiskit Community GitHub |
|---|---|
| View on IBM Quantum Platform | ส่วน Details และ view ที่ขยายในส่วน Two-qubit gate error (layered) |
RZZ error (Heron)
ข้อผิดพลาดใน Gate RZZ เฉลี่ยตาม RZZ angles โดยใช้ตัวแปรของ randomized benchmarking สำหรับ arbitrary unitaries
| View with Qiskit | สำคัญ: ตรวจสอบให้แน่ใจว่าตั้งค่า use_fractional_gates=True เมื่อโหลด Backend แล้วจึงใช้ backend.target['rzz'][<qubit 1>, <qubit 2>] |
|---|---|
| View on IBM Quantum Platform | ส่วนการสอบเทียบ: เลือก RZZ ในเมนูดรอปดาวน์ Connection และวางเมาส์เหนือการเชื่อมต่อ Qubit ใน Map view คุณยังสามารถเลือก RZZ error ในเมนูดรอปดาวน์ Graph output ใน Graph view หรือดูค่าใน Table view ภายใต้คอลัมน์ RZZ error |
ID error / √x (sx) error / Pauli-X error / RX error
ข้อผิดพลาดใน Gate one-qubit แบบ finite-duration discrete วัดจาก randomized benchmarking ลำดับ randomized benchmarking ประกอบด้วย Gate SX, ID และ X และสมมติว่าข้อผิดพลาดของ Gate เหล่านี้เท่ากัน Gate ID คือ delay ที่มีระยะเวลาเท่ากับระยะเวลาของ Gate √X และ X Gate RX ยังมีระยะเวลาเดียวกับ Gate √X และ X ด้วย amplitude แบบแปรผัน ดังนั้นจึงรายงานว่ามีข้อผิดพลาดเหมือน Gate เหล่านี้
| View with Qiskit | backend.target['<instruction>'][<qubit 1>, ] |
|---|---|
| View on IBM Quantum Platform | ส่วนการสอบเทียบ: เมนูดรอปดาวน์ Qubit |
SX error (median)
Average gate fidelity ของ Gate √X (SX) จาก randomized benchmarking วัดพร้อมกันบน Qubit ทั้งหมด ลำดับ randomized benchmarking ประกอบด้วย Gate SX, ID และ X และสมมติว่าข้อผิดพลาดของ Gate เหล่านี้เท่ากัน
| View on IBM Quantum Platform | ส่วน Details |
|---|
Z-axis rotation (RZ) error
ข้อผิดพลาดใน virtual RZ gate รายงานเป็น 0 ทั้งหมดเนื่องจากดำเนินการในซอฟต์แวร์
| View with Qiskit | backend.target['<instruction>'][<qubit 1>, ] |
|---|---|
| View on IBM Quantum Platform | ส่วนการสอบเทียบ: เมนูดรอปดาวน์ Connection |
Readout error
readout error วัดความน่าจะเป็นเฉลี่ยของการวัดสถานะ Qubit ผิดพลาด โดยทั่วไปคำนวณเป็นค่าเฉลี่ยของ prob_meas0_prep1 และ prob_meas1_prep0 ให้ค่าเดียวสำหรับ measurement fidelity
| View with Qiskit | backend.properties().readout_error(<qubit>) |
|---|---|
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ เมนูดรอปดาวน์ Qubit |
Readout error (median)
Fidelity ของการดำเนินการ readout readout error วัดโดยเตรียม Qubit ในสถานะ 0 (1) และวัดความน่าจะเป็นของ output ในสถานะ 1 (0) ค่าที่รายงานเป็นค่าเฉลี่ยของข้อผิดพลาดสองค่านี้ โดยนำ median จาก Qubit ทั้งหมด
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ ส่วน Details |
|---|
Single-qubit gate length
ระยะเวลาของการดำเนินการ single-qubit gate โปรดทราบว่าค่าที่แสดงบน IBM Quantum Platform เป็นหน่วยนาโนวินาที ค่าที่ return ใน Qiskit เป็นหน่วยวินาที
| View with Qiskit | backend.target['<instruction>'][<qubit 1>, ].duration |
|---|---|
| View on IBM Quantum Platform | ส่วนการสอบเทียบ: เมนูดรอปดาวน์ Qubit |
Gate length (2Q gates)
ระยะเวลาของการดำเนินการ two-qubit gate โปรดทราบว่าค่าที่แสดงบน IBM Quantum Platform เป็นหน่วยนาโนวินาที ค่าที่ return ใน Qiskit เป็นหน่วยวินาที
| View with Qiskit | backend.target['<instruction>'][<qubit 1>, <qubit 2> ].duration |
|---|---|
| View on IBM Quantum Platform | ส่วนการสอบเทียบ: เมนูดรอปดาวน์ Qubit |
Readout length
readout_length ระบุระยะเวลาของการดำเนินการ readout สำหรับ Qubit วัดเวลาตั้งแต่เริ่มการส่ง measurement pulse จนเสร็จสิ้นการแปลงสัญญาณเป็นดิจิทัล หลังจากนั้นระบบพร้อมสำหรับการดำเนินการถัดไป การเข้าใจพารามิเตอร์นี้สำคัญมากสำหรับการ optimize การ execute Circuit โดยเฉพาะเมื่อรวม mid-circuit measurements
| View with Qiskit |
|
|---|---|
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ เมนูดรอปดาวน์ Qubit |
backend.target["cz"][(1, 0)]
InstructionProperties(duration=6.8e-08, error=0.010202155482934266)
backend.target["measure"][(0,)]
InstructionProperties(duration=1.56e-06, error=0.025634765625)
คุณสมบัติเพิ่มเติม
CLOPS (or CLOPS_h)
Circuit layer operations per second (CLOPS) เป็นการวัดว่า QPU สามารถ execute เลเยอร์ของ Circuit 100x100 (hardware-aware circuit) ได้กี่เลเยอร์ต่อหน่วยเวลา
| Calculate with Qiskit | ดู โค้ด CLOPS ใน Qiskit Community GitHub |
|---|---|
| View on IBM Quantum Platform | ส่วน Details |
Status
ด้วย BackendStatus คุณสามารถดูสถานะ QPU (เช่น Active, Paused, Offline) รวมถึงจำนวนงานที่รออยู่
| View with Qiskit | print(backend.status().status_msg), print(backend.status().pending_jobs) |
|---|---|
| View on IBM Quantum Platform | ส่วน Details |
Topology diagram or coupling map
แผนภาพที่แสดง Qubit คู่ที่รองรับการดำเนินการ two-qubit gate ระหว่างกัน เรียกอีกชื่อว่า coupling map หรือ connectivity Qubit แทนด้วยวงกลม และการดำเนินการ two-qubit gate ที่รองรับแสดงเป็นเส้นที่เชื่อม Qubit
| View with Qiskit | from qiskit.visualization import plot_gate_map then plot_gate_map(backend) |
|---|---|
| View on IBM Quantum Platform | ส่วนข้อมูลการสอบเทียบ; คลิก Expand เพื่อดู view ที่ใหญ่ขึ้น |
หาก benchmarking ของ Qubit หรือ edge ไม่สำเร็จในช่วงหลายวัน ไม่ว่าจะเนื่องจากคุณภาพข้อมูลต่ำหรือปัจจัยภายในอื่นๆ ค่าข้อผิดพลาดที่รายงานจะถือว่าล้าสมัยและจะถูกรายงานเป็น 1 นี่ไม่ได้บ่งชี้ว่า Qubit หรือ edge ไม่ทำงานอย่างจำเป็น หรือข้อผิดพลาดเป็น 1 แต่ถือว่าข้อผิดพลาดไม่ได้กำหนดและควรดำเนินการด้วยความระมัดระวังเมื่อใช้งาน Qubit หรือ Gate นั้น
ขั้นตอนถัดไป
- เรียนรู้วิธี สร้างโมเดลเสียง เพื่อทำ noisy classical simulation
- ศึกษา ขั้นตอนของ Transpiler เพื่อเรียนรู้เกี่ยวกับวิธีที่ Transpiler ใช้คุณสมบัติ Backend ในการ optimize Circuit
- ดู ข้อมูลอ้างอิง QiskitRuntime backend API