Quantumsoftware schrijven en testen: IBM Quantum vs. Intel Quantum SDK

Inhoudsopgave
  1. 1. Inleiding
  2. 2. IBM Quantum: Inloggen en aan de slag
  3. 3. IBM Quantum: Het eerste programma bouwen
  4. 4. IBM Quantum: Interview met ingenieur
  5. 5. Intel: Toegang verkrijgen en verbinden
  6. 6. Intel: De eerste code uitvoeren
  7. 7. Intel: Hybride programma’s en quantumsimulatie
  8. 8. Intel: Interview en ervaringen
  9. 9. IBM vs. Intel: Variational Quantum Eigensolver
  10. 10. Conclusie

IBM Quantum: Interview met ingenieur

Hardware Info kreeg de kans om vragen te stellen aan Stefan Woerner, Manager Quantum Computational Sciences bij IBM Research Europe - Zurich. Hij geeft leiding aan het team dat onderzoek doet naar de toepassingen van quantumsoftware en werkt samen met verschillende andere teams op het gebied van hardware en software. Zijn taak is om toepassingen te vinden voor quantumcomputers bij wetenschappelijk onderzoek en bedrijven.

Stefan legt uit dat IBM Quantum als doel heeft om de integratie van de mogelijkheden van quantum zo naadloos mogelijk te maken. IBM Quantum kan worden ingezet in de context van een bestaand klassiek proces om quantumrekenkracht beschikbaar te maken. De twee Qiskit-primitives bieden een manier om taken in te dienen op een quantumsysteem zonder dat de programmeur of gebruiker zich zorgen hoeft te maken over de uitvoering van het circuit zelf.

Dit jaar wil IBM de zogenaamde middleware flink verbeteren. Deze laag tussen hardware en software zorgt voor de orchestration, het toewijzen van de resources aan elke taak. Het doel is een zogenaamd serverless model, waarbij automatisch de juiste hoeveelheid klassieke en quantumprocessors wordt gereserveerd voor de rekenkracht die de gebruiker vraagt. Ook circuit cutting speelt hierbij een rol. In dit proces worden de operaties zo mogelijk opgeknipt in kleinere circuits, om de benodigde rekenkracht te verlagen. Dit maakt het mogelijk om grote circuits uit te voeren op meerdere kleine processors. Hiervoor zijn wel meer van deze kleinere circuits of meer klassieke rekenkracht nodig.

De primitives zijn geschreven in Python en hebben net als de Qiskit Runtime-cloudservice een Python-interface. Sommige elementen zijn geschreven in Rust, voor snellere uitvoering, maar hier krijgt de standaard gebruiker nooit mee te maken. Hiervoor is gekozen omdat Python vrij eenvoudig en snel is te leren, maar ook veel mogelijkheden biedt door het grote aantal libraries. Indien gewenst kan de api ook vanuit een andere programmeertaal worden aangeroepen, zolang deze overweg kan met de OpenQASM-standaard.

Toekomstplannen

Tijdens het interview deelde Woerner de IBM Quantum-roadmap voor de komende drie jaar. Op dit moment is er een testversie van het serverless model. Op hardwaregebied wordt er de komende jaren op meerdere manieren geschaald. Behalve dat de chips groter worden, worden ze onderling verbonden met gemeenschappelijke klassieke communicatie- en control electronics. Volgend jaar komen er ook korte- en lange-afstandsconnecties tussen de quantumchips zelf, en in 2025 worden beide verbindingen gecombineerd.

Verder moeten de primitives nog dit jaar ondersteuning krijgen voor ‘multi-threading’. Daarmee kunnen meerder quantumprocessor-units in parallel worden ingezet. Volgend jaar komt er betere foutonderdrukking en -verwerking, wat echter wel ten koste gaat van de uitvoersnelheid. Het doel van goed werkende foutcorrectie is nog ver weg, maar vooruitgangen in het verwerken en onderdrukken van fouten kunnen in de komende jaren wel leiden tot bruikbare toepassingen.

Op dit moment zijn quantumcomputers nog niet in te zetten voor het oplossen van realworld-problemen. Er zijn wel prototypes van applicaties en er wordt onderzocht wat er nodig is om quantumprogramma’s in te kunnen zetten. In 2024 hoopt IBM een systeem te hebben dat circuits met 100 qubits en een circuit depth van 100 kan verwerken en uitvoeren. Dit is meer dan op dit moment gesimuleerd kan worden met klassieke computers, en dus een flinke stap naar een quantum advantage: het punt waarop quantumcomputers problemen kunnen oplossen die niet met klassieke rekenkracht zijn te kraken.

Advertentie
0