Architektura RISC-V w superkomputerach
| Gospodarka AktualnościW przeciwieństwie do komercyjnych architektur procesorów, jak ARM i x86, RISC-V zalicza się do kategorii open source. Piąta generacja procesorów opartych na zredukowanej liczbie rozkazów RISC w ostatnich latach zyskuje dużą popularność – według RISC-V International, organizacji zarządzającej tym standardem, tylko do końca 2022 roku dostarczono ponad 10 miliardów procesorów z tytułowymi rdzeniami. Niedawno o RISC-V zaczęto również mówić w kontekście High-Performance Computing (HPC).
HPC, czyli technologia wysoko wydajnych obliczeń, obejmuje rozwiązania w zakresie przetwarzania danych i wykonywania obliczeń z szybkościami znacząco przewyższającymi zwykłe komputery. Są one osiągane dzięki agregowaniu zasobów obliczeniowych. To pozwala na uzyskanie sumarycznej wydajności obliczeniowej większej niż ma pojedynczy komputer.
Do tej kategorii zalicza się niestandardowe superkomputery, jak i grupy pojedynczych komputerów zwanych klastrami. Wysokowydajne obliczenia uruchamia się lokalnie, w chmurze albo jako połączenie obu tych podejść. Komputery w klastrze nazywa się węzłami. Algorytmy i oprogramowanie działają równolegle we wszystkich węzłach klastra.
HPC w praktyce
Obciążenia (zadania obliczeniowe) w środowiskach HPC są klasyfikowane na te powiązane ze sobą luźno albo ściśle. Pierwsze (równoległe, o dużej przepustowości) składają się z niezależnych zadań, które można uruchamiać w tym samym czasie. Zadania mogą dzielić wspólną pamięć, ale nie są zależne od kontekstu i dlatego nie muszą się wymieniać wynikami. Przykładem luźno powiązanego obciążenia jest tworzenie filmu z obrazów generowanych komputerowo. Każda klatka wideo jest renderowana niezależnie od pozostałych, mimo że mają one te same dane wejściowe, takie jak tła i modele 3D.
Ściśle powiązane obciążenia składają się z wielu procesów, z których każdy jest obsługiwany przez różne węzły w klastrze, wzajemnie zależne w celu wykonania całego zadania. Zazwyczaj wymagają połączenia sieciowego o małych opóźnieniach między węzłami oraz szybkiego dostępu do pamięci współdzielonej i pamięci masowej. Przykładem ściśle powiązanego obciążenia jest prognozowanie pogody, które wymaga symulowania dynamicznie zmieniających się i współzależnych czynników, jak temperatura, wiatr, ciśnienie, opady. W takim przypadku każdy węzeł klastra oblicza częściowe rozwiązania dla różnych zmiennych, kompilowane do ostatecznej prognozy.
HPC to dziedzina, która rozwija się coraz dynamiczniej. Dotychczas z wysokowydajnych obliczeń korzystano głównie w ośrodkach akademickich, w których prowadzono badania w zakresie m.in. fizyki teoretycznej, astrofizyki czy fizyki jądrowej. Obecnie jednak, w miarę rosnącej dostępności danych z wielu źródeł, zapotrzebowanie na moc obliczeniową rośnie także w przemyśle i biznesie.
Obecnie najszybszym superkomputerem na świecie (stan na listopad 2023) jest Frontier zbudowany przez Hewlett Packard, zainstalowany w amerykańskim Oak Ridge National Laboratory. Maszyna ta wykorzystuje procesor AMD Optimized 3rd Generation EPYC 64C 2GHz z 8 699 904 rdzeniami. Jej moc obliczeniowa wynosi 1194 PFlop/s (w teście Linpack).
RISC-V
RISC-V opracowano w ramach projektu na Uniwersytecie Kalifornijskim w Berkeley, który miał na celu stworzenie architektury procesorów open source, która byłaby oparta na RISC. Początkowo była przeznaczona do użytku akademickiego. Z czasem jednak standard ten ewoluował i jest obecnie zarządzany przez wspominaną we wstępie organizację RISC-V International. Za rozwój standardu RISC-V odpowiadają jej członkowie. Warte podkreślenia jest, że stowarzyszenie to zostało zarejestrowane w Szwajcarii. Kraj ten wybrano nie bez przyczyny – chodziło o to, by projektantom z całego świata zapewnić swobodę, bez jakichkolwiek regulacji rządowych.
Bezpłatny model programowy RISC-V ISA (Instruction Set Architecture) zawiera niewielki zestaw podstawowych instrukcji, opcjonalne rozszerzenia pozwalają jednak projektantom na dostosowanie architektury procesora do różnych zastosowań końcowych. Zagwarantowana jest także elastyczność wyboru spośród dostępnych funkcji, zamiast konieczności korzystania z ich pełnego zestawu.
Dzięki temu projektanci mogą opracowywać niestandardowe procesory na potrzeby zarówno nieskomplikowanych urządzeń wbudowanych, jak i superkomputerów. Wspólna baza ISA ułatwia tworzenie oprogramowania. Otwarty charakter architektury pozwala skupionej wokół tego projektu społeczności na opracowywanie niezbędnych narzędzi i publiczną analizę projektów procesorów pod kątem bezpieczeństwa. Dla tego ostatniego kluczowe znaczenie mają grupy robocze zajmujące się najlepszymi praktykami w dziedzinie bezpieczeństwa, które publikują wytyczne w tym zakresie i dzielą się projektami referencyjnymi.
RISC-V w HPC
Według coraz większej liczby ekspertów architektura RISC-V będzie się wciąż popularyzowała w dziedzinie wysokowydajnych obliczeń, a nawet może w końcu uzyskać w niej pozycję dominującą. Świadczą o tym m.in. kolejne inicjatywy takie, jak na przykład ogłoszony na początku zeszłego roku konkurs w ramach partnerstwa European High Performance Computing Joint Undertaking (EuroHPC) na opracowanie technologii sprzętu i oprogramowania HPC w oparciu o RISC-V i jej wdrożenie w eksaskalowych i posteksaskalowych superkomputerach. Wskazuje się na kilka cech architektury RISC-V, które mogą okazać się decydujące dla jej przyszłości w dziedzinie HPC.
Przede wszystkim jest to nie tylko rozwiązanie niekomercyjne, ale może być również rozszerzane. Dzięki temu projekt procesora RISC-V można uzupełnić o dodatkowe funkcje, które są specyficzne dla danej aplikacji i uzyskać do nich dostęp przez dodanie niestandardowych instrukcji do zestawu standardowego.
Zdaniem ekspertów jak dotąd architektura ta nie upowszechniła się w dziedzinie wysokowydajnych obliczeń głównie dlatego, że nie zaprojektowano jej pod tym kątem, lecz obecnie niejako została ukierunkowana na wymagania zastosowań HPC, przede wszystkim dzięki modelowi biznesowemu, który reprezentuje. Ważna jest też społeczność, która skupia się wokół tego projektu, jak to zwykle bywa w przypadku rozwiązań open source.
Przykład Linuxa
Pod tym względem można dostrzec analogię z systemem operacyjnym Linux. Ten, podobnie jak ISA RISC-V, początkowo był projektem niszowym. Z czasem jednak jego popularność wzrastała ze względu na jego otwarty charakter. Nikt by jednak wówczas nie pomyślał, że Linux będzie kiedyś działał na komputerach z najwyższej półki.
Kiedy w 1993 roku po raz pierwszy ukazała się lista dostępnych komercyjnie superkomputerów o największej mocy obliczeniowej TOP500, znajdował się na niej tylko jeden komputer z Linuxem. Udział tego systemu operacyjnego jednak sukcesywnie rósł i w 2000 roku wynosił prawie 6%, w 2003 już 40%, a w 2007 – 79%. Obecnie (stan na listopad 2023 roku) wszystkie superkomputery odnotowane w tym zestawieniu wykorzystują Linuxa (różne jego dystrybucje).
Zatem system operacyjny, który oryginalnie nie był przeznaczony dla rynku HPC, ostatecznie zdołał go zdominować. Być może połączony wysiłek społeczności i przyzwolenie branży doprowadzą do tego również w przypadku architektury RISC-V.
Przykład ARM
Eksperci jako przykład podają również architekturę ARM, której dzięki m.in. rozszerzeniu zestawu instrukcji o obsługę 512-bitowych jednostek Scalable Vector Engine w procesorze A64FX udało się wywindować superkomputer Fugaku firmy Fujitsu do czołówki rankingu TOP500 (czwarte miejsce w listopadzie 2023 roku). Prace nad dostosowaniem instrukcji RISC-V i rozszerzeniem tej architektury pod kątem wymagań wysokowydajnych obliczeń, zwłaszcza nad rozszerzeniami do przetwarzania wektorowego oraz operacji zmiennoprzecinkowych, już są prowadzone.
Nie można zatem zaprzeczyć, że RISC-V ma potencjał, by podbić rynek HPC, który, o ile kiedyś był różnorodny pod względem architektur procesorów, obecnie jest prawie całkowicie zdominowany przez x86 i ARM. Specjaliści przewidują, że im bardziej wyspecjalizowany będzie się on stawał, tym mniejszy w nim będzie udział Intela.
Poparcie w European Chips Act
Eksperci zwracają uwagę również na jeszcze jedną ważną zaletę architektury RISC-V wynikającą z tego, że zalicza się ją do rozwiązań open source – niezastrzeżona architektura procesorów pozwala na zachowanie suwerenności technologicznej. W niepewnych czasach, w których o strategicznej przewadze państwa decyduje postęp naukowy oraz rozwój gospodarczy, w które wysokowydajne obliczenia są w stanie wnieść niepodważalny wkład, jest to priorytetem dla wielu krajów. Dowodzi tego chociażby europejska ustawa o chipach (European Chips Act).
W dokumencie tym architektura RISC-V została uznana za jedną z technologii nowej generacji, w którą Europa powinna inwestować, aby zachować i wzmocnić swoją wiodącą pozycję w badaniach i innowacjach, jak i produkcji sprzętu, przyczyniając się tym samym do budowania i wzmacniania potencjału Unii w zakresie innowacji w projektowaniu, produkcji oraz pakowaniu zaawansowanych, energooszczędnych i bezpiecznych układów scalonych oraz produktów na nich opartych.
Zakres wykorzystania architektury RISC-V obejmuje proste mikrokontrolery aż po wysokiej klasy procesory do centrów danych i superkomputerów. European Chips Act wymaga, by jej rozwój już na wczesnym etapie był powiązany z dużymi zastosowaniami przemysłowymi, aby uzyskać pewność, że będzie skierowany do szerszego rynku europejskiego i przyczyni się do suwerenności cyfrowej wykraczającej poza naukowe zastosowania HPC.
Wiele do zrobienia
Chociaż RISC-V ma niezaprzeczalny potencjał, zdaniem wielu ekspertów o tym, czy uda się go z sukcesem wykorzystać w segmencie HPC, ostatecznie może zadecydować dostępność ekosystemu oprogramowania. Kluczową rolę odegrają narzędzia dla programistów, jak kompilatory i narzędzia do analizy wydajności wykorzystywane w celu zidentyfikowania czasochłonnych sekwencji kodu i sprawdzania, czy wyspecjalizowane instrukcje mogłyby je przyspieszyć.
Generalnie nic nie stoi na przeszkodzie, aby RISC-V osiągnął ugruntowaną pozycję na rynku HPC, ale potrzeba na to czasu. W końcu architekturze ARM zajęło ponad dekadę, nim osiągnęła poziom, na którym mogła być konkurencyjna w tym segmencie.
Zdecydowanie jest więc jeszcze wiele do zrobienia, aby dostosować architekturę RISC-V do potrzeb HPC. Ważną rolę w tym zakresie z pewnością odegra utworzona w ramach RISC-V International grupa robocza Special Interest Group High-Performance Computing (SIG-HPC).
Monika Jaworowska