Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kvantdatorer är utsatta för brus och fel eftersom enskilda kvantbitar är mycket känsliga för ändringar i miljöförhållanden. Feltolerant kvantberäkning kräver algoritmer som använder QEC-koder (quantum error correction). Dessa koder skapar och använder logiska kvantbitar från samlingar av enskilda fysiska kvantbitar. Logiska kvantbitar korrigerar fel när ett program körs på en kvantdator så att kvantberäkningar kan ge tillförlitliga resultat.
Resursberäknaren Microsoft Quantum är ett verktyg med öppen källkod i paketet Microsoft Quantum Development Kit (QDK) Python som gör att du kan uppskatta de resurser som behövs för att köra ett kvantprogram på en feltolerant kvantdator. Felkorrigeringskoder ökar antalet fysiska kvantbitar och körningstiden för en kvantalgoritm. Resursberäknaren avgör hur många fysiska kvantbitar och hur lång tid det tar för ett kvantprogram att köras på specifik maskinvara med ett visst felkorrigeringsschema.
Med kvantresursberäknaren kan du jämföra kvantbitstekniker, kvantfelkorrigeringsscheman och maskinvarutekniker för att förstå effekten på de resurser som behövs för att köra ett kvantprogram.
Hur fungerar kvantresursberäknaren?
Resursberäknaren bygger på en skiktad modelleringsmetod för att vara flexibel och sammansättningsbar. Du skapar modeller för programmet, maskinvaran och felkorrigeringsschemat. Du anger också hur dessa modeller interagerar. Alla modeller och instruktioner är oberoende av varandra, så du kan kombinera och jämföra olika kombinationer av modeller.
Resursberäknaren använder mellanliggande representationer för att ansluta lagren. Dessa representationer är en del av uppskattningens implementering och krävs inte för typisk användning. Du interagerar med resursestimatorn via standardprogrammeringsspråk och konfigurationsmodeller på hög nivå.
Kvantresursberäknaren kräver fyra indata:
- En programmodell som beskriver kvantberäkningen, till exempel ett Q#-program
- En arkitekturmodell som beskriver target kvantmaskinvaran, till exempel gatebaserade supraledande kvantbitar med specifika porttider och felfrekvenser
- En felkorrigerings- och fabriksdestillationsmodell som motsvarar maskinvaruarkitekturmodellen
- En felbudget, som är den högsta tillåtna felfrekvensen för åtgärder på logiska kvantbitar
Från programmodellen genererar resursberäknaren en eller flera programspårningar. Dessa spårningar är kompakta representationer av de instruktionssekvenser som tillämpas på kvantbitar. Från arkitekturmodellen och felkorrigeringsmodellen härleder resursberäknaren en fysisk instruktionsuppsättning (ISA) som anger åtgärdstider, kvantbitskostnader och felfrekvenser.
Både programlagret och arkitekturlagret konverteras till konfigurerbara transformeringar. Spårtransformationer från applikationslagret omfattar grinduppdelningar och layoutprocedurer. ISA-transformeringar från arkitekturskiktet innehåller kvantfelkorrigeringskoder och magiska tillståndsfabriker för att skapa logiska instruktionsuppsättningar med högre återgivning från arkitekturens fysiska primitiver.
Resursberäknaren utforskar ett stort kombinatoriellt designutrymme eftersom det finns många giltiga designval på varje lager. Till exempel olika QEC-kodavstånd, olika fabriksprotokoll och olika nedbrytningsparametrar. Resursberäknaren undersöker varje kombination av programspår och arkitektur-ISA för att utvärdera antal fysiska kvantbitar, körtider och ackumulerade felfrekvenser för varje kombination. Resultaten filtreras till en Pareto-optimal front, vilket är den optimala uppsättningen konfigurationer där inget annat resultat samtidigt är bättre både vad gäller qubitar och körtid och samtidigt håller sig inom den angivna felbudgeten.
Stöd för programspråk
Resursberäknaren accepterar kvantprogram i flera i följande programmeringsspråk och mellanliggande format:
- Q#
- Cirq
- OpenQASM
- QIR
- Logiska antal
- Anpassade applikationer
Med QIR och möjligheten att skapa anpassade program är resursberäknaren språkagnostisk och stöder en mängd olika kvantprogrammeringsverktyg. Program i olika ramverk analyseras med samma uppskattningspipeline. Du kan också skapa anpassade program utanför dessa ramverk som stöds.
Stöd för arkitekturmaskinvara
Resursuppskattningar beror på antaganden om maskinvaran target och felkorrigeringskoden som skyddar logiska åtgärder från fel. Resursberäknaren innehåller inbyggda modeller för vanliga arkitekturer och felkorrigeringsscheman. Du kan också definiera dina egna anpassade maskinvaru- och felkorrigeringsmodeller för att utforska hypotetiska arkitekturer, utvärdera nya tekniker eller studera hur ändringar i fysiska parametrar påverkar resurskraven för att köra ett program.
Jämföra uppskattningar och visualisera resultat
Med resursberäknaren kan du uppskatta de resurser som behövs för att köra samma kvantalgoritm för olika konfigurationer av target arkitekturmodeller. Du kan rita resultaten för varje konfiguration för att jämföra resultaten. När du jämför uppskattningar kan du förstå hur kvantbitsarkitekturen, QEC-schemat och andra maskinvaruparametrar påverkar de totala resurser som krävs för att köra programmet.
Kom igång med resursberäknaren
Kom igång genom att läsa Installera och använda resursberäknaren Microsoft Quantum.
Mer information och kodexempel finns i kvantresursestimatorexemplen på QDK-lagringsplatsen på GitHub.