Microsoft Superkomputer odnajdywania

Usługa Microsoft Discovery integruje sztuczną inteligencję agentów, dane i obliczenia o wysokiej wydajności (HPC) w jedną platformę badawczą. Superkomputer Microsoft Discovery zapewnia warstwę HPC tej platformy. Wraz z pulami węzłów superkomputer obsługuje symulacje, przetwarzanie danych na dużą skalę oraz inne zadania wymagające dużej mocy obliczeniowej na potrzeby agentów Discovery i użytkowników.

Przegląd

Superkomputer Microsoft Discovery zapewnia dostęp do zasobów HPC firmy Microsoft, obejmujących tysiące rdzeni w wielu architekturach sprzętowych, w tym CPU i GPU. Pule węzłów grupują te zasoby, aby obciążenia można było planować na sprzęcie dostosowanym do ich wymagań. Agenci odnajdywania przesyłają obciążenia do superkomputera, który wybiera odpowiednią pulę węzłów i zarządza wykonywaniem.

Kluczowe możliwości

  • Wykonywanie równoległe. Superkomputer uruchamia obciążenia jednocześnie do konfigurowalnego limitu. Kolejne zadania są umieszczane w kolejce i uruchamiane w miarę udostępniania zasobów.
  • Zabezpieczenia i zgodność przedsiębiorstwa. Wszystkie zadania są uruchamiane w obrębie dzierżawy Azure i dziedziczą istniejące mechanizmy zgodności i zabezpieczeń. Dane źródłowe, modele i wyniki pośrednie pozostają w subskrypcji.
  • Pojemność elastyczna. Zasoby są skalowane na żądanie w ramach zdefiniowanych limitów — od kilku współbieżnych zadań do dziesiątek tysięcy.
  • Różnorodność sprzętowa. Obsługiwany sprzęt obejmuje procesory GPU, procesory x86 firmy Intel i AMD oraz procesory oparte na architekturze ARM. Nowe typy procesorów Azure stają się dostępne bez opóźnień w zaopatrzeniu.

Grupy węzłów

Pula węzłów to podstawowa jednostka używana przez Discovery do organizowania zestawu podobnych zasobów obliczeniowych. Każda pula węzłów definiuje konfigurację zasobów obliczeniowych i pamięci należących do niej węzłów, dzięki czemu Discovery może umieszczać obciążenia robocze w odpowiednim klastrze. Każda pula określa również limit równoległości dla obciążeń uruchamianych w tej puli.

Pula węzłów określa następujące atrybuty:

  • Profil sprzętu (rozmiar) określa typy maszyn wirtualnych Azure używane przez wszystkie węzły w puli. Na przykład pula procesorów GPU może używać maszyn wirtualnych serii ND z procesorami GPU NVIDIA Blackwell Ultra i Grace dla obciążeń sztucznej inteligencji, podczas gdy pula procesorów CPU może używać procesorów AMD, Intel lub Cobalt ARM dla tradycyjnych procesorów HPC. Superkomputer Discovery obsługuje szeroki zakres rozwiązań Azure HPC przeznaczonych do wyspecjalizowanych obciążeń, takich jak obciążenia wykorzystujące procesory GPU, obciążenia wymagające dużej ilości pamięci oraz typy maszyn wirtualnych do niewielkiego skalowania poziomego.
  • Pojemność wskazuje maksymalną liczbę maszyn wirtualnych, które można uruchomić w puli. Pula może mieć zero węzłów, gdy jest bezczynna, i skalować się do skonfigurowanego maksimum. Dostępna pojemność zależy od limitów Twojej subskrypcji.
  • Sieć i lokalizacja określa sposób, w jaki węzły w puli są przyłączane do wyznaczonej podsieci sieci wirtualnej, która umożliwia im łączenie się z usługami platformy, takimi jak magazyn danych, oraz z systemem orkiestracji Supercomputer. Pula węzłów znajduje się w tym samym regionie platformy Azure i tej samej sieci wirtualnej co Supercomputer, aby zapewnić niskoopóźnieniową komunikację międzywęzłową na potrzeby obciążeń MPI (Message Passing Interface) i udostępniania danych.
  • Przypisanie obciążenia roboczego. Pula węzłów może być przeznaczona dla określonego obciążenia roboczego, zespołu lub projektu, aby zapewnić izolację i śledzenie zadań.

Ponieważ zasoby platformy Azure są wirtualne, dopasowanie rozmiaru puli pod kątem szczytowego obciążenia nie powoduje marnowania zasobów, gdy pula jest bezczynna. Administratorzy mogą stosować limity współbieżności na pulę, a użytkownicy i agenci wysyłają obciążenia do puli, która najlepiej odpowiada ich wymaganiom.

Konfiguracje puli węzłów

Obciążenia mają różne cechy przetwarzania. Niektóre są zoptymalizowane pod kątem operacji wektorów lub tensorów; inne są zoptymalizowane pod kątem obliczeń skalarnych. Pule węzłów umożliwiają dopasowanie sprzętu do obciążenia.

Kategorie sprzętu

  • Pule węzłów z akceleracją GPU Maszyny wirtualne wyposażone w GPU, przeznaczone do trenowania modeli głębokiego uczenia, dynamiki molekularnej i innych algorytmów korzystających z akceleracji GPU. Na przykład pula z serii ND, wyposażona w procesory graficzne NVIDIA Blackwell, zapewnia wysoką przepustowość w obliczeniach macierzowych i dobrze nadaje się do chemii obliczeniowej, genomiki oraz przetwarzania obrazów.
  • Pule węzłów zoptymalizowane pod kątem CPU Wysokowydajne maszyny wirtualne z procesorami CPU do obciążeń skalujących się wraz z liczbą rdzeni lub ilością pamięci, ale nieodnoszących korzyści z użycia procesorów GPU, takich jak tradycyjne obciążenia HPC i automatyzacja projektowania elektronicznego (EDA), analiza statystyczna oraz przetwarzanie danych. Maszyny wirtualne procesora CPU o niższych kosztach są również odpowiednie do wstępnego przetwarzania, orkiestracji i sterowania obciążeniami.
  • Wyspecjalizowane pule węzłów. Rozmiary maszyn wirtualnych spełniające wyspecjalizowane wymagania sprzętowe, takie jak układy FPGA.

Pojedynczy superkomputer może łączyć wiele kategorii sprzętu w celu obsługi różnorodnych obliczeń naukowych na jednej platformie. Na przykład organizacja farmaceutyczna może obsługiwać jedną pulę procesorów GPU na potrzeby generowania cząsteczek opartych na sztucznej inteligencji, drugą pulę procesorów GPU na potrzeby symulacji i pulę procesora CPU do przetwarzania danych eksperymentalnych. Zespół inżynierów krzemowych może sparować pulę procesorów GPU na potrzeby symulacji elektromagnetycznej z pulą procesorów CPU na potrzeby weryfikacji projektu.

Skalowanie modeli

  • Automatyczne skalowanie (na żądanie) pul węzłów. Domyślna konfiguracja. Pula nie ma uruchomionych węzłów, gdy jest bezczynna. Węzły są udostępniane, gdy obciążenia są do nich kierowane, a zwalniane po zakończeniu zadań, aż do skonfigurowanego maksimum. Ten model jest opłacalny w przypadku obciążeń skokowych lub występujących rzadko.
  • Trwałe (zawsze włączone) pule węzłów. Skonfigurowano z minimalną liczbą węzłów większą niż zero. Pule trwałe gwarantują dostępną pojemność dla obciążeń wrażliwych na opóźnienia kosztem bezczynnego użycia maszyn wirtualnych.

Wymagania wstępne i artefakty

Wdrożenie superkomputera wymaga następujących artefaktów: sieci wirtualnej i podsieci, tożsamości zarządzanych, obrazów kontenerów i definicji zasobów dla narzędzi.

Infrastruktura sieciowa

Superkomputer działa w środowisku Azure, dlatego należy podać konfigurację sieci, która integruje klaster HPC z siecią przedsiębiorstwa i mechanizmami kontroli zabezpieczeń.

Superkomputer wymaga Azure sieci wirtualnej i używa dwóch podsieci, jednej dla składników aranżacji systemu i zarządzania, a drugi dla węzłów obliczeniowych. Obie podsieci muszą znajdować się w tej samej sieci wirtualnej, a podsieć systemowa musi mieć łączność z podsieciami puli węzłów, aby płaszczyzna sterowania mogła koordynować planowanie i kontrole kondycji.

Zabezpieczenia i tożsamość

Superkomputer używa Azure tożsamości zarządzanych do interakcji z innymi usługami Azure i zarządzania maszynami wirtualnymi.

  • Tożsamość klastra. Tożsamość zarządzana przypisana przez użytkownika, którą przypisujesz do superkomputera podczas wdrażania. Warstwa sterowania używa tej tożsamości do wykonywania operacji na klastrze, takich jak podłączanie magazynu i pobieranie obrazów kontenerów z usługi Azure Container Registry (ACR).
  • Tożsamość węzła (kubelet). Druga tożsamość zarządzana przypisana do maszyn wirtualnych węzła, która zapewnia im dostęp do zasobów, takich jak usługa ACR dla obrazów narzędzi. Tożsamość usługi kubelet może mieć węższy zakres niż tożsamość klastra, ale musi mieć przypisaną rolę Operator tożsamości zarządzanej dla tożsamości klastra. Taka konfiguracja umożliwia maszynom wirtualnym węzłów korzystanie z uprawnień tożsamości klastra do wykonywania określonych operacji bez ujawniania poświadczeń, przy zachowaniu rozdzielenia między płaszczyzną sterowania a płaszczyzną węzłów.
  • Tożsamości obciążeń. Mechanizm wykrywania obsługuje oddzielne tożsamości dla płaszczyzn obliczeniowej, administracyjnej i zarządzania superkomputera. Tożsamości obciążeń umożliwiają narzędziom korzystanie z mechanizmów zarządzania tożsamościami platformy Azure bez konieczności zarządzania sekretami.
  • Dostęp do rejestru obrazów. Obrazy kontenerów narzędzi są zwykle przechowywane w usłudze ACR lub innym rejestrze kontenerów. Tożsamości superkomputerów wymagają dostępu do ściągania. Skonfiguruj usługę ACR tak, aby ufała tożsamości zarządzanej superkomputera za pomocą Microsoft Entra ID zamiast bezpośrednio zarządzać poświadczeniami platformy Docker.
  • Zarządzana grupa zasobów. Utworzenie superkomputera powoduje utworzenie zarządzanej grupy zasobów w Twojej subskrypcji, która zawiera bazowe zasoby platformy Azure, takie jak zestawy skalowania maszyn wirtualnych. Discovery zarządza tą grupą zasobów w twoim imieniu, oddzielnie od pozostałych grup zasobów. Upewnij się, że twoja subskrypcja ma wystarczający limit przydziału dla rozmiarów maszyn wirtualnych, których planujesz użyć. Usunięcie superkomputera powoduje usunięcie zarządzanej grupy zasobów.

Obrazy kontenerów narzędzi i środowisko oprogramowania

Narzędzia odnajdywania są uruchamiane na superkomputerze przy użyciu kontenerów platformy Docker. Obraz musi zawierać pliki binarne, biblioteki i kod wymagany przez narzędzie. Obrazy muszą być domyślnie zgodne z systemem operacyjnym węzła, który jest systemem Linux. Po uruchomieniu narzędzia platforma pobiera obraz ze skonfigurowanego rejestru do przypisanego węzła. Własne narzędzia muszą zawierać wszystkie sterowniki, które nie są dostępne w obrazie bazowym.

Sekwencja wdrażania

Poniższa sekwencja przedstawia sposób wdrażania i użycia składników.

  1. Utwórz superkomputer (płaszczyznę sterowania). Administrator wdraża zasób Superkomputera za pośrednictwem portalu Azure, Azure CLI lub szablonu usługi ARM. Wdrożenie określa nazwę i region, łączy wymaganą podsieć i przypisuje tożsamości zarządzane.
  2. Utwórz klaster HPC (płaszczyzna danych). Funkcja Discovery automatycznie tworzy zarządzaną grupę zasobów i wdraża zasoby klastra oraz wyświetla monit o konfigurację podsieci i środowiska bazowego.
  3. Zdefiniuj pule węzłów (płaszczyznę sterowania). Administrator tworzy co najmniej jedną pulę węzłów dla superkomputera, określając rozmiar maszyny wirtualnej, podsieć węzła i parametry skalowania. Mechanizm odnajdywania zarządza odpowiednimi zestawami skalowania maszyn wirtualnych w zarządzanej grupie zasobów. Pule mogą rozpoczynać działanie z zerową liczbą węzłów, gdy włączone jest automatyczne skalowanie, albo od skonfigurowanej minimalnej liczby węzłów, gdy są trwałe.
  4. Rejestrowanie narzędzi i agentów (płaszczyzna sterowania). Autorzy narzędzi rejestrują je w katalogu Discovery, podając dla każdego narzędzia lokalizację obrazu kontenera oraz wymagania dotyczące zasobów. Agenci mogą następnie wywoływać zarejestrowane narzędzia.
  5. Uruchamianie obciążeń (płaszczyzna danych). Gdy użytkownik uruchamia zadanie za pośrednictwem usługi Copilot lub przepływu pracy agenta, system Discovery koordynuje wykonanie i uruchamia wymagane narzędzia w odpowiednich pulach węzłów.
  6. Monitoruj i kończ zadania. Warstwa sterowania monitoruje uruchomione zadania za pomocą kolejek zadań, dzienników i kontroli stanu. Użytkownicy otrzymują aktualizacje stanu za pośrednictwem Copilot. Po zakończeniu zadania wyniki są zapisywane w wyznaczonym magazynie, a kontener kończy działanie. Bezczynne węzły są zwalniane w pulach automatycznego skalowania.
  7. Iterowanie i skalowanie. Użytkownicy mogą przeglądać wyniki i wysyłać kolejne uruchomienia w razie potrzeby. Pule węzłów są skalowane na żądanie, a administratorzy mogą zmieniać rozmiar istniejących pul lub dodawać nowe w miarę rozwoju obciążeń.

Integracja z Microsoft.Discovery/storages

Discovery integruje się z superkomputerem i magazynem HPC platformy Azure za pośrednictwem typu zasobu Microsoft.Discovery/storages. W przypadku obciążeń wymagających magazynu plików o wysokiej wydajności Azure NetApp Files jest odpowiednią opcją.

Kontenery danych i zasoby danych

Poza infrastrukturą pamięci masowej Discovery zarządza danymi naukowymi za pomocą kontenerów danych DataContainers i zasobów danych. Oba są nieodłącznymi elementami potoku wykonywania narzędzia i są zdefiniowane w projektach Discovery.

DataContainers

Usługa DataContainer to logiczny magazyn danych, który abstrahuje podstawową technologię magazynowania i przedstawia spójny interfejs agentom sztucznej inteligencji w ramach Azure Blob Storage, usługi Discovery Storage i innych zapleczy. Usługa DataContainers zapewnia:

  • Abstrakcja pamięci masowej. Ujednolicony dostęp do zapleczy magazynu.
  • Kontrola dostępu. Zarządzanie poświadczeniami na potrzeby bezpiecznego dostępu.
  • Integracja. Zdefiniowany punkt integracji między zasobami magazynu i narzędziami do badań.

Elementy Microsoft.Discovery.DataContainer DataContainers są przedstawiane jako zasoby połączone z określonymi kontami magazynowymi lub woluminami.

Zasoby danych

Zasób danych reprezentuje pojedynczy plik, zestaw danych lub kolekcję wewnątrz obiektu DataContainer. Zasoby danych zapewniają:

  • Organizacja. Grupowanie według zadania, zlecenia lub projektu.
  • Pochodzenie. Rekord źródła i przekształceń danych.
  • Metadane. Atrybuty opisowe, które zwiększają możliwości odnajdywania.
  • We/Wy narzędzia. Mechanizm ustrukturyzowany narzędzi do korzystania z danych i ich tworzenia.

Metadane zasobu danych opisują zawartość, format i relacje elementu zawartości, umożliwiając zasobom uczestnictwo w złożonych przepływach pracy.

Następny krok