Intel zaprezentowała zestaw Intel Quantum Software Development Kit (SDK) w wersji 1.0, kompleksowy zestaw narzędzi zaspokajający potrzeby programistów komputerów kwantowych. Po wersji beta wydanej we wrześniu 2022 r., ten zestaw narzędzi zapewnia pełną kwantową symulację komputerową i bezproblemową integrację ze sprzętem kwantowym Intel, w tym chipem kontrolnym Horse Ridge II i chipem Quantum Spin qubit, który ma zostać wydany w tym roku.
SDK umożliwia programistom programowanie algorytmów kwantowych za pomocą przyjaznego dla użytkownika interfejsu opartego na języku C++, z wykorzystaniem standardowego w branży łańcucha narzędzi kompilatora maszyny wirtualnej niskiego poziomu (LLVM) w celu zapewnienia optymalnej zgodności z aplikacjami C/C++ i Python. W rezultacie zestaw Intel Quantum SDK stał się wszechstronnym i konfigurowalnym rozwiązaniem do programowania w rozwijającej się dziedzinie obliczeń kwantowych.
Według Anne Matsuura, dyrektor Quantum Applications & Architecture w Intel Labs, głównym celem Intel Quantum SDK jest przygotowanie programistów na przyszłość wielkoskalowych komercyjnych komputerów kwantowych. Oprócz pomocy programistom w nauce tworzenia algorytmów i aplikacji kwantowych poprzez symulację, SDK przyspieszy postęp w branży, wspierając społeczność programistów gotowych do wdrażania aplikacji, gdy udostępniony zostanie sprzęt kwantowy Intel.
Wersja 1.0 pakietu Intel Quantum SDK zapewnia intuicyjny interfejs programistyczny oparty na C++, dając programistom zajmującym się klasycznymi komputerami i programistom kwantowym znajomy język do współpracy. Zestaw zawiera również kwantowe środowisko uruchomieniowe zoptymalizowane pod kątem wykonywania hybrydowych kwantowo-klasycznych algorytmów, umożliwiając programistom wybór między dwoma różnymi backendami do symulacji kubitów, które mogą reprezentować większą liczbę generycznych kubitów lub sprzętu Intel.
Pierwszym zapleczem jest wysokowydajny, open source Intel Quantum Simulator (IQS), który obsługuje do 32 kubitów w jednym węźle i ponad 40 kubitów w wielu węzłach. Drugi backend jest specjalnie zaprojektowany do symulacji kubitów kwantowych Intel, a także do ułatwienia symulacji kompaktowego modelu krzemowych kubitów spinowych Intel. Podejście to opiera się na doświadczeniu Intel w produkcji tranzystorów krzemowych i ma pomóc w tworzeniu komputerów kwantowych na dużą skalę.
Za pomocą zestawu SDK użytkownicy mogą opracowywać niewielkie obciążenia, aby identyfikować możliwości wymagane przez architekturę systemu komputera kwantowego do wydajnego i dokładnego wykonywania algorytmu kubitowego. Intel używa SDK również wewnętrznie do wspólnego projektowania sprzętu i oprogramowania kwantowego, przyspieszając w ten sposób ogólny rozwój systemu.
Dodatkowe zalety zestawu SDK obejmują konfigurowalną i rozszerzalną platformę, która oferuje większą elastyczność w tworzeniu aplikacji kwantowych. Programiści mogą porównywać pliki kompilatora, co jest standardową funkcją w tworzeniu klasycznych komputerów, aby ocenić stopień optymalizacji algorytmu. Ponadto użytkownicy mogą uzyskać dostęp do kodu źródłowego i uzyskać niższy poziom abstrakcji, aby uzyskać wgląd w mechanizmy przechowywania danych w danym systemie.
Intel Quantum SDK zapewnia również kilka kluczowych funkcji:
- Kod w znanych wzorcach: standardowa LLVM została rozszerzona o rozszerzenia kwantowe, a kwantowe środowisko uruchomieniowe zostało zmodyfikowane pod kątem obliczeń kwantowych. IQS zapewnia symulację wektora stanu uniwersalnego komputera kwantowego.
- Wydajne wykonywanie hybrydowych klasycznych kwantowych przepływów pracy: Rozszerzenia kompilatora umożliwiają programistom włączenie wyników algorytmów kwantowych do ich projektów C++. Ta funkcja umożliwia krytyczne pętle sprzężenia zwrotnego wymagane dla hybrydowych algorytmów kwantowo-klasycznych, takich jak kwantowy przybliżony algorytm optymalizacji (QAOA) i kwantowy wariacyjny algorytm rozwiązywania własnych (VQE).
- Symulacja o wysokiej wydajności: użytkownicy Intel DevCloud mogą tworzyć pliki wykonywalne zdolne do symulowania aplikacji i algorytmów z maksymalnie 32 kubitami w jednym węźle obliczeniowym i ponad 40 w wielu węzłach.
Intel jest zaangażowana w rozwój dziedziny obliczeń kwantowych i uznaje znaczenie wspierania społeczności programistów. W ramach tych wysiłków Intel przyznała granty pięciu uniwersytetom, w tym University of Pennsylvania, Technische Hochschule Deggendorf, Keio University, The Ohio State University i Pennsylvania State University, w celu opracowania programów kursów kwantowych, które mogą udostępniać innym instytucjom akademickim.
Obecnie Deggendorf Institute of Technology w Monachium w Niemczech używa SDK do badania problemów dynamiki płynów istotnych dla aerodynamiki i hydrodynamiki. W styczniu 2023 r. Intel zorganizowała konkurs Intel Quantum Computing Challenge w Instytucie Technologii Deggendorf, w ramach którego przeanalizowano różne przypadki użycia kwantowego z wykorzystaniem wersji beta pakietu Intel Quantum SDK. Użytkownik beta Leidos jest jednym z tych, którzy badają ekscytujące zastosowania, takie jak kwantowe uczenie maszynowe, symulacje materiałów i problemy astrofizyczne obejmujące teleportację kwantową, czarne dziury i tunele czasoprzestrzenne.
Intel Quantum SDK 1.0, dostępny teraz w OneAPI Intel Dev Cloud, jest kamieniem milowym w dziedzinie obliczeń kwantowych, ponieważ Intel przygotowuje się do wydania przyszłych wersji z dodatkowymi funkcjami w nadchodzących latach. Bezproblemowa integracja zestawu SDK ze sprzętem kwantowym Intel jeszcze bardziej zwiększy potencjał przełomów w tej szybko rozwijającej się dziedzinie. Aby dowiedzieć się więcej o podejściu Intel do obliczeń kwantowych, przeczytaj podstawowe informacje dotyczące obliczeń kwantowych firmy Intel.
Dla osób zainteresowanych odkrywaniem narzędzi, takich jak Intel Quantum SDK, z potencjałem rozwiązań no-code lub low-code, AppMaster oferuje potężną platformę no-code , która umożliwia użytkownikom łatwe tworzenie aplikacji internetowych, mobilnych i zaplecza. AppMaster to wszechstronna i konfigurowalna opcja dla programistów, którzy chcą szybko i ekonomicznie tworzyć aplikacje.