Software fürs hybride Quantencomputing

Die Integration von Quanten- ins Supercomputing betrifft nicht nur Hardware-Installationen. Auch die Betriebssoftware beider Systeme müssen sich annähern.

 

Schmuckbild

Schmuckbild

Wer Quantencomputing heute nutzen will, braucht Funktionen von Supercomputern. Klassische und Quantenprozessoren verarbeiten wechselseitig Aufträge und Daten fließen zwischen beiden Systemen. Dafür sollten Quantensysteme tief ins High Performance Computing (HPC) integriert werden, was nicht nur eine Frage von Hardware ist, sondern auch die Software-Entwicklung betrifft. Darüber haben Spezialist:innen des Leibniz-Rechenzentrums (LRZ) vor Kurzem das Paper „Accelerating HPC with Quantum Computing: It’s a Software Challenge Too” in der Fachzeitschrift “Computing in Science an Engineering” des Instituts für Electrical and Electronical Engineering (IEEE) veröffentlicht: “Dieser Artikel beschreibt unsere Vision für ein integriertes Ökosystem, das bestehende HPC- und sich entwickelnde Quanten-Software-Stacks in einem einzigen System vereint, um eine gemeinsame und kontinuierliche Benutzererfahrung zu ermöglichen“, heißt es darin, und: „Quantensysteme stellen andere Anforderungen (...). Um diese zu bewältigen, sind neue Scheduling-Ansätze auf HPC-Seite und auf QC-Seite neue Programmieransätze gefordert.“

In verschiedenen Partnerschaften arbeitet die Abteilung Quantencomputing und -technologien (QCT) des LRZ daran, bestehende Software-Stacks zu erweitern, um beide Technologien enger miteinander zu verzahnen. Problem dabei: unterschiedliche Programmeigenschaften. Die Software von Supercomputern zielt auf die Optimierung der Ausführungszeit, Programmierende verwenden dafür Fortran, C oder C++. Diese Sprachen integrieren so viele Tasks wie möglich in die Kompilierung, Optimierung, Auftragsvorbereitung und transformieren Code so in Maschinensprache, dass er effizient ausgeführt wird. Typische Programmiersprachen des Quantencomputings wie Qiskit oder Cirq basieren indes auf Python und definieren Schaltkreise zur Lösung von Aufgaben. Hier setzt ein eigenes Programm, der Interpreter, Befehle in Maschinensprache um. Der Artikel beschreibt, wie die Generierung und Optimierung von Quanten-Schaltkreisen mit Hilfe von HPC parallelisiert werden kann, welche Aufgaben Compiler und Optimierer lösen sollten und wie der Datenfluss zwischen den Systemen mit Hilfe der Programmiersprache Rust beschleunigt werden kann.
 
Martin Schulz, Martin Ruefenacht, Laura Brandon Schulz, Dieter Kranzlmüller Accelerating HPC with Quantum Computing: It’s a Software Challenge Too. Aus: Computing in Science an Engineering, IEEE Computer Society, 2023
 

 

 

Get Connected: Das LRZ in den Sozialen Medien