Przejdź do głównej treści

Wprowadzenie

Witamy na Granicy

Na przestrzeni historii nasze naukowe rozumienie świata gwałtownie rosło wraz z pojawieniem się nowych narzędzi – narzędzi, które pozwalały nam zadawać nowe pytania, prowadzić większe eksperymenty i eksplorować nowe obszary badań. Do takich narzędzi należą teleskop, mikroskop i Wielki Zderzacz Hadronów. Każde z nich otworzyło dostęp do nowych rodzajów odkryć naukowych. W latach sześćdziesiątych XX wieku obserwowaliśmy również rozwój obliczeń wysokiej wydajności (HPC), które stały się kluczowym narzędziem do rozwiązywania złożonych zadań obliczeniowych, w tym wielu ważnych wyzwań naukowych.

Teraz mamy kolejne ważne narzędzie dla postępu naukowego: komputery kwantowe. Choć wciąż jest to technologia wschodzącą, komputery kwantowe mają potencjał, by znacząco zmienić rodzaje problemów obliczeniowych, które możemy efektywnie rozwiązywać. Ten kurs dotyczy zrozumienia, w jaki sposób te technologie, działając razem, mogą rozszerzać granice tego, co jest obliczeniowo możliwe.

Nasza misja jest jasna, choć ambitna: zapewnić ci konceptualną i praktyczną wiedzę niezbędną do wykorzystania tych technologii w celu rozwiązania niektórych z najtrudniejszych problemów świata.

Ten film opisuje cele tego kursu i motywację stojącą za łączeniem HPC z obliczeniami kwantowymi.

HPC

Czym dokładnie są obliczenia wysokiej wydajności? HPC stało się fundamentem rozwiązywania nowoczesnych problemów obliczeniowych. Nie żyjemy już w czasach, gdy zaawansowane problemy można było rozwiązywać prostymi narzędziami, takimi jak liczydło czy kartka i długopis; zamiast tego mamy do czynienia z pytaniami i zbiorami danych wymagającymi ogromnej mocy obliczeniowej.

Dziedzina obliczeń wysokiej wydajności ma swoje korzenie w opracowaniu pierwszych superkomputerów w latach sześćdziesiątych XX wieku. Były to maszyny zaprojektowane specjalnie do rozwiązywania dużych problemów naukowych i inżynierskich szybciej niż konwencjonalne komputery.

Jednym z pierwszych znanych superkomputerów był CDC 6600 (1964), zbudowany przez Seymour'a Cray'a, często nazywanego ojcem superkomputerów. CDC 6600 był najszybszym komputerem swojej epoki, wykorzystując innowacyjną architekturę obejmującą równoległe jednostki funkcjonalne i przetwarzanie potokowe – koncepcje stosowane w HPC do dziś.

Cray kontynuował rozwijanie tej dziedziny wraz z Cray-1 (1976), który wprowadził przetwarzanie wektorowe – technikę znacznie zwiększającą szybkość operacji na dużych tablicach danych, doskonale nadającą się do obliczeń naukowych.

Gdy szybkości pojedynczych procesorów zaczęły się wyrównywać, HPC ewoluowało w kierunku obliczeń równoległych – z wykorzystaniem wielu procesorów współpracujących przy różnych częściach problemu. W latach osiemdziesiątych i dziewięćdziesiątych XX wieku architektury równoległe stały się powszechne w HPC. Na początku XXI wieku HPC przeszło w kierunku klastrów sprzętu klasy konsumenckiej, czyli zwykłych serwerów połączonych sieciami o wysokiej przepustowości. Ta zmiana sprawiła, że superkomputery stały się bardziej przystępne cenowo i zapewniły szerszy dostęp do HPC.

Przez całą tę ewolucję IBM® znajdował się na czele badań i wdrożeń HPC. Warto wspomnieć, że superkomputery IBM Blue Gene były jedną z najbardziej wpływowych rodzin superkomputerów lat 2000. i początku 2010. Był to okres ogromnego wzrostu masowo równoległych systemów, czego przykładem był Blue Gene/Q, którego jedna instancja (Sequoia) posiadała 100 000 węzłów. Zbudowany przez IBM Oak Ridge Summit był pierwszym zasobem HPC, który osiągnął ExaOPS (1,88 mixed precision) w 2018 roku.

Dziś jesteśmy w erze exascale, gdzie superkomputery mogą wykonywać 101810^{18} operacji na sekundę (exaflops). Pierwszym superkomputerem zdolnym do osiągnięcia tego kamienia milowego był Frontier, zlokalizowany w Oak Ridge National Laboratory.

Dlaczego potrzebujemy tak potężnych zasobów obliczeniowych? Istnieją problemy kluczowe dla dobrobytu ludzkości, które wymagają tak ekstremalnych zasobów do modelowania lub rozwiązania. Przykłady obejmują modele klimatyczne, badanie struktury i ruchu płaszcza Ziemi oraz symulacje dynamiki płynów.

Wiele problemów tego typu zostało rozwiązanych przez badaczy IBM i współpracowników pracujących na systemach IBM. To stałe przywództwo jest powszechnie uznawane. Na przykład badacze IBM zdobyli Nagrodę Gordona Bella sześć razy.[1]

HPC jest bardzo aktywną dziedziną, w której granice są regularnie przesuwane. Aby zapoznać się z przeglądem nowoczesnych możliwości, zajrzyj na tę listę 500 najszybszych superkomputerów.

Obliczenia kwantowe

Obliczenia kwantowe to nowy paradygmat obliczeniowy, który nie podąża po prostu za stopniowym rozwojem komputerów klasycznych. Jego celem jest wykorzystanie kwantowych właściwości superpozycji, splątania i kwantowej interferencji do rozwiązywania problemów, które byłyby niewykonalne dla samych komputerów klasycznych. W tym kursie nie będziemy zgłębiać szczegółów wyjątkowości obliczeń kwantowych – po więcej informacji na ten temat zajrzyj do kursu Podstawy informacji kwantowej – lecz zamiast tego omówimy, w jaki sposób połączenie tych dwóch infrastruktur może prowadzić do przełomów w nauce stosowanej.

Podejście hybrydowe

Najważniejsze jest podkreślenie, że te dwa paradygmaty obliczeniowe nie są konkurentami. Żyjemy w erze, gdy zoptymalizowane przepływy pracy wymagają, by oba paradygmaty uzupełniały się nawzajem i by zadania były przydzielane tam, gdzie są obsługiwane najefektywniej. Komputery kwantowe nie zastąpią systemów klasycznych; raczej przyszłość nauki obliczeniowej będzie coraz bardziej zależeć od hybrydowych przepływów pracy, gdzie HPC zapewnia wysokowydajne przetwarzanie klasyczne, a obliczenia kwantowe wnoszą unikalne możliwości. Jako praktyk, badacz lub technolog zrozumienie, jak łączyć te narzędzia, sprawi, że staniesz się liderem w kolejnej erze postępu naukowego i technologicznego.

Przyjrzymy się, jak obliczenia kwantowe i HPC są przygotowane do umożliwienia przełomów w szerokim zakresie branż, w tym:

  • Chemia: Przyspieszanie identyfikacji nowych leków i materiałów.

  • Energetyka: Projektowanie ulepszonych katalizatorów, baterii i rozwiązań czystej energii.

  • Finanse: Modelowanie ryzyka, optymalizacja portfeli i opracowywanie nowych instrumentów finansowych.

  • AI i uczenie maszynowe: Ulepszanie trenowania modeli, optymalizacji i analizy danych.

Dlaczego wychodzimy poza obliczenia klasyczne

Ludzkość odniosła znaczące sukcesy w powyższych obszarach zastosowań dzięki HPC. Jednak nawet najszybsze superkomputery na świecie napotykają trudności, gdy problemy skalują się silniowo lub wykładniczo wraz z rozmiarem zadania. Na przykład wylistowanie każdego możliwego układu 50 cząstek wewnątrz złożonej cząsteczki prowadzi do konfiguracji rosnących co najmniej silniowo, wymagając więcej pamięci niż wszystkie centra danych na Ziemi łącznie mogłyby zapewnić.

Innym przykładem jest planowanie trasy dostawy dla 10 000 miast: liczba możliwych tras staje się tak duża, że nawet gdyby każdy kiedykolwiek zbudowany komputer sprawdzał jedną trasę na mikrosekundę, obliczenia zajęłyby rzędy wielkości dłużej niż obecny wiek naszego Słońca. Te liczby nie są tylko duże; rosną wykładniczo, co oznacza, że każda dodatkowa cząstka lub miasto mnoży ciężar obliczeniowy daleko poza prostą skalę.

Możemy dalej dodawać GPU, ale manipulowanie tak ogromnymi ilościami danych zużywa już megawaty energii i wymaga obiektów wielkości magazynów. W pewnym momencie klasyczny sprzęt nie może skalować się dalej w praktyczny ani przystępny cenowo sposób. Dlatego właśnie badacze zwracają się ku procesorom kwantowym, które przechowują informacje w superpozycjach i mogą czasami bezpośrednio podchodzić do tych problemów wykładniczego wzrostu, rozwiązując konkretne przypadki, których klasyczne maszyny nie mogą ukończyć w żadnym rozsądnym czasie.

HPC ostatecznie napotyka fundamentalne limity narzucone przez kombinatorykę i termodynamikę. Obliczenia kwantowe nie eliminują tych limitów, ale czasami mogą je ominąć w bardzo specyficznych scenariuszach.

Dlaczego nie same obliczenia kwantowe?

Jeśli obliczenia kwantowe mogą obejść pewne ograniczenia obliczeń klasycznych, dlaczego nie opieramy się wyłącznie na komputerach kwantowych? Pierwszy i najbardziej oczywisty powód jest taki, że komputery kwantowe nadal potrzebują klasycznych maszyn do działania. Zadania takie jak kompilowanie i podawanie Circuit do procesora kwantowego, przechowywanie wyników pomiarów i wykonywanie podstawowego post-processingu – wszystkie są realizowane przez klasyczne systemy obliczeniowe.

Dlaczego zatem dodatkowo potrzebujemy obliczeń wysokiej wydajności? Istnieje kilka powodów. Wiele obecnych i przewidywanych zastosowań obliczeń kwantowych dotyczy problemów z niezwykle dużymi przestrzeniami poszukiwań. Algorytmy kwantowe mogą często znacznie zmniejszyć rozmiar tej przestrzeni, ale w praktyce pozostały problem może nadal być na tyle duży, że skorzysta z zasobów HPC. Co więcej, istnieją algorytmy balansujące mocne strony HPC i obliczeń kwantowych, przekazując wystarczającą część pracy do HPC, by ogólny algorytm był bardziej odporny na efekty szumu kwantowego.

Konkretnym przykładem jest algorytm kwantowej diagonalizacji opartej na próbkach (SQD). Ten algorytm, który będzie eksplorowany w Lekcji 4, demonstruje, jak HPC i obliczenia kwantowe mogą się uzupełniać w praktyce. Dodatkowe informacje znajdziesz w kursie Algorytmy kwantowej diagonalizacji na IBM Quantum Learning.

Ten kurs jest przeznaczony dla profesjonalistów i studentów, którzy pracują – lub planują pracować – blisko z infrastrukturą HPC i/lub obliczeniami kwantowymi. Wraz z szybkim postępem w technologiach kwantowych przewidujemy bliską przyszłość, w której procesory kwantowe będą zintegrowane obok tradycyjnych zasobów HPC, aby osiągać dokładniejsze wyniki i umożliwiać nowe podejścia do rozwiązywania problemów. Ten kurs jest przeznaczony dla uczących się, którzy chcą zrozumieć, jak budować i uruchamiać takie hybrydowe przepływy pracy.

Ponieważ uczestnicy mogą wywodzić się z różnych środowisk, spodziewamy się dwóch głównych typów uczących się: tych mających już doświadczenie w HPC, ale nowych w obliczeniach kwantowych, oraz tych dobrze zaznajomionych z obliczeniami kwantowymi, ale nowych w HPC. Aby pomóc każdemu jak najlepiej skorzystać z tego kursu, poniżej zamieszczamy zalecenia dotyczące przygotowania dla obu grup.

Dla osób nowych w HPC

Ten kurs zakłada znajomość podstawowych konceptów HPC, takich jak programowanie z pamięcią rozproszoną, przekazywanie komunikatów, modele programowania równoległego i zarządzanie zasobami. Będziemy również używać narzędzi takich jak menedżer obciążenia Slurm. Choć wiele z tych konceptów zostanie krótko wprowadzonych w razie potrzeby, wcześniejsza znajomość sprawi, że materiał będzie bardziej przystępny. Pomocne zasoby obejmują:

Dodatkowe zasoby są również dostępne w tym repozytorium GitHub.

Dla osób nowych w obliczeniach kwantowych

Ten kurs będzie korzystać z podstawowych narzędzi i konceptów obliczeń kwantowych z minimalnym wprowadzeniem. Zalecamy, aby uczestnicy posiadali co najmniej roboczą znajomość Qiskit, znajomość Gate'ów i Circuit, oraz pewne zapoznanie z algorytmami opartymi na próbkowaniu. Wymienione poniżej zasoby powinny zapewnić pomocne przygotowanie.

  • Przewodnik IBM Quantum® Composer: Przewodnik po Composerze, graficznym narzędziu do programowania kwantowego, które pozwala przeciągać i upuszczać operacje, aby budować Circuit i uruchamiać je na sprzęcie kwantowym.
  • Wprowadzenie do Qiskit: Zestaw przewodników pomagających zainstalować i skonfigurować Qiskit.
  • Hello world: Krótki samouczek Qiskit, w którym konfigurujesz i uruchamiasz swój pierwszy program kwantowy.
  • Algorytmy kwantowej diagonalizacji: Kurs obejmujący kilka typów algorytmów kwantowych, w tym SQD, który będzie używany w tym kursie.

Dodatkowe zasoby są również dostępne w tym repozytorium GitHub.

Uczący się ze wszystkich środowisk mogą znaleźć ten przewodnik użytecznym; obejmuje on wtyczkę SPANK do zarządzania zasobami kwantowymi i kilka słów o Slurm.

Jest kilka sposobów, w jakie wyjątkowość obliczeń kwantowych sprawia, że są one proceduralnie różne od klasycznych zasobów obliczeniowych w sposób istotny dla tego kursu. Na przykład nie ma dobrego kwantowego odpowiednika RAM. Informacje są przechowywane i przetwarzane w stanach samych kubitów. Chociaż pomiary mogą pozwolić na klasyczne rejestrowanie niektórych cech kubitów, takie pomiary niszczą dużą część bogactwa stanu kwantowego, w tym superpozycję i splątanie. Co więcej, zasoby obliczeniowe kwantowe nie są obecnie zlokalizowane na tym samym węźle co inne zasoby HPC, a użytkownicy zasobów kwantowych często nie będą mieć takiego samego poziomu kontroli harmonogramowania, jaką mogą mieć nad klasycznymi zasobami HPC. Te realia będą powtarzane w odpowiednich lekcjach. Ale wniosek z tego jest taki, że komputery kwantowe zmienią świat i muszą być zintegrowane z HPC, ale nie są „tylko kolejnym" zasobem HPC, który można kontrolować i używać w taki sam sposób jak CPU, GPU itd. Komputery kwantowe zmieniają sposób, w jaki możemy podchodzić do wielu problemów obliczeniowych.

O tym kursie

Pod koniec tego kursu będziesz w stanie zrobić więcej niż tylko powtarzać terminy techniczne – zrozumiesz, jak zarządzać nowoczesnym hybrydowym przepływem pracy, który przydziela konkretne podzadania procesorowi kwantowemu, podczas gdy CPU i GPU obsługują pozostałą pracę. Nauczysz się, jak pisać skrypty dla zadań płynnie przechodzących między klasycznymi węzłami a QPU, interpretować wyniki z dokładnością i rozpoznawać, gdzie kwantowe przyspieszenie może naprawdę poprawić obliczenia (a gdzie nie może). Równie ważne jest to, że będziesz ćwiczyć utrzymywanie nastawienia na wzrost: w nowej i szybko ewoluującej dziedzinie nikt nie uczy się wszystkiego naraz, a prawdziwy postęp pochodzi z iterowania, eksperymentowania i zadawania pytań. Ten kurs jest podzielony na 5 rozdziałów, które obejmują następujące tematy:

Zarys kursu

  • Lekcja 1 – Ta lekcja omówiła tło i motywację
  • Lekcja 2 – Zasoby obliczeniowe i ich zarządzanie
  • Lekcja 3 – Modele programowania obejmujące heterogeniczne środowiska obliczeniowe
  • Lekcja 4 – Algorytmy kwantowe do hybrydowych przepływów pracy, konkretnie SQD
  • Lekcja 5 – Perspektywy i kierunki na przyszłość

Potraktuj ten kurs jako swoje wyrzutni – miejsce, w którym budujesz mentalny zestaw narzędzi i pewność siebie, by odkrywać kwantowo-klasyczną granicę długo po ukończeniu ostatniej lekcji.

Odniesienia

[1] https://www.hpcwire.com/off-the-wire/gordon-bell-prize-awarded-to-ibm-and-leading-university-researchers/