Einführung in Debugging-Tools
Du kannst deine Quantenprogramme testen, indem du sie auf simulierten Geräten ausführst und ihre Leistung unter realistischen Geräterauschmodellen untersuchst. Dadurch kannst du sie debuggen, bevor du sie an eine Quantenprozessoreinheit (QPU) sendest.
Quantensimulatoren können verwendet werden, um Programme zu entwickeln und zu testen, bevor sie feinabgestimmt und an Quantenhardware gesendet werden. Lokale Simulatoren können dies mit guter Leistung und Effizienz durchführen.
Da die Kosten für die klassische Simulation von Quantenschaltkreisen exponentiell mit der Anzahl der Qubits skalieren, können Schaltkreise mit mehr als 50 Qubits oder so im Allgemeinen nicht auf Simulatoren ausgeführt werden. Für solche Schaltkreise kannst du:
- Kleinere Versionen der Schaltkreise testen, die klassisch simuliert werden können.
- Die Schaltkreise so modifizieren, dass sie klassisch simulierbar werden, obwohl sie weniger genau sind.
Stabilizer-Schaltkreise, auch als Clifford-Schaltkreise bekannt, sind ein nützliches Werkzeug, um dieses letztere Ziel zu erreichen. Dies sind eine eingeschränkte Klasse von Quantenschaltkreisen, die effizient klassisch simuliert werden können. Spezialisierte Simulatoren können Stabilizer-Schaltkreise mit Tausenden von Qubits problemlos simulieren. Siehe Effiziente Simulation von Stabilizer-Schaltkreisen mit Qiskit Aer Primitives für weitere Informationen.
Für allgemeine Quantenschaltkreise stehen die folgenden Tools zum Testen und Debuggen deiner Quantenprogramme zur Verfügung:
- Zum Simulieren von Schaltkreisen bei Verwendung von Qiskit Runtime nutze den Local Testing Mode.
- Für die exakte Simulation kleiner Quantenschaltkreise kannst du die mit Qiskit enthaltenen Referenz-Primitives verwenden. Siehe Exakte Simulation mit Qiskit Primitives.
- Für leistungsstärkere Simulation, die größere Schaltkreise bewältigen kann, oder um Rauschmodelle in deine Simulation einzubeziehen, nutze Qiskit Aer, ein Projekt, das Teil des Qiskit Ecosystem ist. Siehe Exakte und rauschbehaftete Simulation mit Qiskit Aer Primitives.
- Um benutzerdefinierte Rauschmodelle zu erstellen, nutze das
noise-Modul von Qiskit Aer. Siehe Rauschmodelle erstellen. - Für Qiskit Runtime Estimator-Jobs nutze die Qiskit Runtime
Neat-Klasse, um deine Jobs zu debuggen und zu analysieren. Siehe Qiskit Runtime Jobs debuggen für Details.
Hardware-Überlegungen
Mehrere Faktoren beeinflussen, wie viel Speicher die Quantensimulation benötigt, sodass es keine exakten Hardwareanforderungen für die Simulation gibt, aber es gibt einige Richtlinien, die du befolgen kannst.
- Die einzige Anforderung zum Ausführen von Qiskit ist eine funktionierende Python-Umgebung. Einzelheiten findest du im Abschnitt Betriebssystemunterstützung.
- Da die Anforderungen für die Simulation von Quantenschaltkreisen exponentiell mit der Anzahl der Qubits skalieren, begrenzt die verfügbare Hardware die Anzahl der Qubits, die simuliert werden können. Beispielsweise kann ein System mit 4 GB RAM ungefähr 27 Qubits simulieren.
- Mehr oder weniger verfügbarer Speicher führt nicht zu mehr oder weniger genauen Ergebnissen (vorausgesetzt, Ergebnisse werden zurückgegeben), obwohl mehr Speicher Ergebnisse schneller zurückgeben oder dir ermöglichen könnte, mehr Qubits zu simulieren.
- Um den größten Nutzen aus deiner Hardware zu ziehen, nutze wenn möglich lokale Stabilizer- (Clifford-) Schaltkreissimulation. Siehe Clifford-Simulation mit Qiskit Runtime Local Testing Mode oder Effiziente Simulation von Stabilizer-Schaltkreisen mit Qiskit Aer Primitives für Beispiele.
- Du kannst deine Rechenleistung erhöhen, indem du diesen Anweisungen folgst, um mit mehreren GPUs, Knoten oder beidem auszuführen.