Nowatorskie zarządzanie danymi dla eksaskalowych superkomputerów
Ponieważ zapotrzebowanie na superkomputery eksaskalowe staje się coraz bardziej rozpowszechnione, operatorzy będą musieli zwiększyć dostęp i wydajność przepływów pracy, aby umożliwić większej liczbie użytkowników uruchamianie coraz bardziej zróżnicowanych i złożonych aplikacji. Systemy eksaskalowe mogą wykonywać miliard miliardów obliczeń na sekundę. Znalezienie sposobu na zarządzanie tymi wszystkim danymi i przechowywanie ich stanowi poważne wyzwanie, ponieważ obecne systemy pamięci masowej osiągają swoje granice, a systemy operacyjne z trudnością sobie z tym radzą. „Przyszłe aplikacje nie będą w stanie działać, wykorzystując obecne paradygmaty pamięci masowej” — mówi Philippe Deniel, szef Storage Systems Lab we francuskiej Komisji Energii Alternatywnej i Atomowej. Jako koordynator projektu IO-SEA, Deniel kierował rozwojem i wdrażaniem nowatorskiego rozwiązania programowego, które zapewnia długoterminowe przechowywanie danych, zdolnego sprostać rosnącemu zapotrzebowaniu. IO-SEA jest jednym z trzech projektów SEA, wraz z DEEP-SEA i RED-SEA, stworzonych w celu opracowania komplementarnych technologii dla modułowej europejskiej architektury obliczeń wielkiej skali (HPC).
Rozwiązania pamięci masowej
Kluczowym wyzwaniem dla obliczeń w eksaskali będzie ewolucja sposobu wykonywania obliczeń. Superkomputery opierają się na procesorach graficznych (GPU), które zaprojektowano z myślą o dzieleniu złożonych problemów na tysiące mniejszych zadań wykonywanych jednocześnie. Oznacza to, że wymagają one również dużej ilości pamięci. U podstaw rozwiązania IO-SEA (znanego jako stos oprogramowania, ponieważ składa się z kilku komponentów) leżą innowacyjne zastosowania hierarchiczne zarządzanie pamięcią masową (HSM), magazyny obiektów i serwery „efemeryczne”. Projekt IO-SEA wykorzystuje architekturę przechowywania danych znaną jako obiektowa pamięć masowa (ang. object storage), w której elementy są zgrupowane razem, a każdy z nich zawiera dane, metadane i unikalny identyfikator. Rozwiązanie HSM oferuje wielopoziomowe podejście do pamięci masowej, które automatycznie identyfikuje najlepsze nośniki pamięci dla danej aplikacji, niezależnie od tego, czy są to pamięci NVMe (ang. non-volatile memory express), takie jak dyski półprzewodnikowe (SSD), nieulotna pamięć o dostępie swobodnym (NVRAM), czy nawet pamięci taśmowe — cenione w superkomputerach ze względu na swój niski koszt i niskie zapotrzebowanie na energię. Ta wielopoziomowa struktura zapewnia, że często używane dane są przechowywane na szybkich nośnikach, takich jak NVMe, a pamięć taśmowa służy jako nośnik do przechowywania bardziej długoterminowego. „Dla skutecznego zarządzania typu HSM ważna jest również szybka identyfikacja plików” — zauważa Deniel. „Nasz zaawansowany mechanizm monitorowania gromadzi dane w dużej bazie, do której nasz system sztucznej inteligencji uzyskuje dostęp, aby tworzyć rekomendacje dla użytkowników w oparciu o ich zachowania”. Wreszcie każdy serwer pamięci masowej jest oferowany na żądanie, z dynamicznym harmonogramem wykonywania zadań obliczeniowych. Operatorzy używają modułu zarządzania przepływem pracy do konfigurowania symulacji, które są następnie automatycznie przypisywane do uruchamiania na dedykowanych węzłach obliczeniowych. Wyniki są wysyłane do systemu pamięci masowej, serwery te „znikają”, a ich węzły są zwalniane do następnej operacji.
Współdzielone zasoby
Użytkownicy mogą obsługiwać system IO-SEA za pomocą różnorodnego oprogramowania pośredniczącego dostępu do danych, takiego jak POSIX, jako jednego z dostępnych protokołów. System został przetestowany w szeregu przypadków użycia, w tym w mikroskopii elektronowej, uruchamianiu programów astrofizycznych, klimatologii i modelowaniu systemu Ziemi (we współpracy z projektem DEEP-SEA), symulacjach fizyki kwantowej oraz meteorologii i prognozowaniu pogody na dużą skalę. „Przez cały czas demonstrowaliśmy zdolność naszego rozwiązania do zmiany paradygmatu z pamięci masowej jako statycznej i niezmiennej na proces, który jest dynamiczny i współdzielony” — dodaje Deniel. Rozwiązanie IO-SEA zostanie wdrożone jako część prototypu eksaskalowego rozwiązania EUPEX, które ma zostać uruchomiony w ciągu kilku lat. Oprogramowanie zostało udostępnione za darmo w serwisie wymiany kodu GitHub. Projekt został zrealizowany przy wsparciu ze Wspólnego Przedsięwzięcia w dziedzinie Europejskich Obliczeń Wielkiej Skali (Wspólne Przedsięwzięcie EuroHPC), inicjatywy utworzonej w celu stworzenia w Europie światowej klasy ekosystemu superkomputerów. „Pomimo faktu, że jest to zbiór kilku produktów, nasze rozwiązanie, współprojektowane przez użytkowników końcowych i twórców systemów, wprowadza zintegrowany stos pamięci masowej, wskazując drogę do obliczeń w eksaskali” — podsumowuje Deniel.
Słowa kluczowe
IO-SEA, Wspólne Przedsięwzięcie EuroHPC, eksaskala, HPC, superkomputery, pamięć, pamięć masowa, zasoby, pamięć obiektowa, hierarchiczne zarządzanie pamięcią masową, HSM, pamięć taśmowa, NVMe