Udostępnij za pośrednictwem


Obliczanie obciążeń aplikacji HPC na dużą skalę na maszynach wirtualnych platformy Azure

Termin duże obliczenia (używane w odwołaniu do HPC) opisuje obciążenia na dużą skalę, które wymagają dużej liczby rdzeni, często w setkach lub tysiącach. Scenariusze obejmują m.in. renderowanie obrazów, dynamikę płynów, modelowanie ryzyka finansowego, poszukiwanie ropy naftowej, projektowanie leków oraz inżynieryjną analizę naprężeń.

Poniżej przedstawiono typowe cechy dużych aplikacji obliczeniowych:

  • Praca może zostać podzielona na osobne zadania, które mogą być uruchamiane na wielu rdzeniach jednocześnie.
  • Każde zadanie jest skończone. Przyjmuje dane wejściowe, przetwarza je i generuje dane wyjściowe. Cała aplikacja jest uruchamiana na skończony czas (od minut do dni). Typowym wzorcem jest skonfigurowanie wielu rdzeni w serii, a następnie wyłączenie do zera po zakończeniu pracy aplikacji.
  • Aplikacja nie musi pozostawać w stanie 24/7. Jednak system musi obsługiwać awarie węzłów lub awarie aplikacji.
  • W przypadku niektórych aplikacji zadania są niezależne i mogą być uruchamiane równolegle. W innych przypadkach zadania są ściśle powiązane, co oznacza, że muszą współdziałać lub dokonywać wymiany wyników pośrednich. W takich przypadkach warto rozważyć użycie szybkich technologii sieciowych, takich jak InfiniBand i zdalny bezpośredni dostęp do pamięci (RDMA).
  • W zależności od obciążenia można użyć maszyn wirtualnych intensywnie korzystających z mocy obliczeniowej (H16r, H16mr i A9).

Diagram zadań platformy Azure.

Platforma Azure oferuje szereg wystąpień maszyn wirtualnych zoptymalizowanych zarówno pod kątem obciążeń intensywnie korzystających z procesora CPU, jak i procesora GPU (zarówno obliczeń, jak i wizualizacji). Maszyny wirtualne są idealne do uruchamiania obciążeń ropy naftowej i gazu.

Platforma Azure to jedyna platforma w chmurze, która oferuje wystąpienia maszyn wirtualnych ze sprzętem z obsługą rozwiązania InfiniBand. Ta funkcja zapewnia znaczącą zaletę wydajności w przypadku uruchamiania symulacji zbiorników i obciążeń sejsmicznych. Zwiększona wydajność zawęża lukę w wydajności i skutkuje niemal lepszą wydajnością niż w przypadku bieżących infrastruktur lokalnych.

Maszyny wirtualne platformy Azure mają wiele różnych opcji, znanych jako rozmiary maszyn wirtualnych. Istnieją różne serie rozmiarów maszyn wirtualnych dla obliczeń HPC i zoptymalizowanych pod kątem procesora GPU. Wybierz odpowiedni rozmiar maszyny wirtualnej dla obciążenia, którego chcesz użyć. Aby uzyskać więcej informacji na temat wybierania rozmiarów maszyn wirtualnych, zobacz Narzędzie selektora platformy Azure w obszarze Rozmiary maszyn wirtualnych.

Nie wszystkie produkty platformy Azure są dostępne we wszystkich regionach świadczenia usługi Azure. Aby uzyskać więcej informacji, zobacz bieżącą listę produktów dostępnych według regionów.

Aby uzyskać najlepsze rozwiązania dotyczące wyborów w usłudze Azure Compute, zobacz blog dotyczący obliczeń platformy Azure lub zobacz zawartość usługi obliczeniowej platformy Azure, aby wybrać usługę.

Maszyny wirtualne oparte na procesorze CPU

Maszyny wirtualne z obsługą procesorów GPU

Maszyny wirtualne serii N zawierają procesory GPU FIRMY NVIDIA przeznaczone do intensywnie korzystających z obliczeń lub intensywnie korzystających z grafiki aplikacji, w tym sztucznej inteligencji (AI), uczenia się i wizualizacji.

Jednostki SKU HPC są tworzone specjalnie w scenariuszach o wysokiej wydajności. Jednak platforma Azure oferuje również inne jednostki SKU, które mogą być odpowiednie dla niektórych obciążeń uruchamianych w infrastrukturze HPC. Te jednostki SKU można skutecznie uruchamiać na tańszym sprzęcie. Niektóre powszechnie używane jednostki SKU obliczeniowe to seria E i F.

Zagadnienia dotyczące projektowania HPC

Harmonogram zadań to wyspecjalizowana usługa służąca do planowania prac intensywnie korzystających z zasobów obliczeniowych do uruchamiania w zarządzanej puli maszyn wirtualnych. Możesz automatycznie skalować zasoby obliczeniowe, aby spełnić potrzeby zadań.

Usługa Azure Batch to usługa zarządzana do uruchamiania aplikacji HPC na dużą skalę. Za pomocą usługi Azure Batch skonfigurujesz pulę maszyn wirtualnych, a następnie przekażesz aplikacje i pliki danych. Następnie usługa Batch konfiguruje maszyny wirtualne, przypisuje zadania do maszyn wirtualnych, uruchamia zadania i monitoruje postęp. Usługa Batch może automatycznie skalować maszyny wirtualne w górę i w dół w odpowiedzi na zmieniające się obciążenia. Usługa Batch udostępnia również funkcję planowania zadań.

Azure CycleCloud to narzędzie do tworzenia klastrów HPC i dużych obliczeń na platformie Azure oraz zarządzania nimi oraz zarządzania nimi. Dzięki usłudze Azure CycleCloud użytkownicy mogą dynamicznie konfigurować klastry platformy Azure HPC i organizować dane i zadania dla przepływów pracy hybrydowych i w chmurze. Usługa Azure CycleCloud zapewnia najprostszy sposób zarządzania obciążeniami HPC przy użyciu różnych menedżerów obciążenia roboczego (takich jak Grid Engine, HPC Pack, HTCondor, LSF, PBS Pro, Slurm lub Symphony) na platformie Azure.

Zalecenia dotyczące projektowania HPC

  • Przepływy pracy zbiorników i sejsmicznych zwykle mają podobne wymagania dotyczące planowania zasobów obliczeniowych i zadań.
  • Chociaż rozważasz potrzeby sieci, w przypadku symulacji sejsmicznych i sejsmicznych z dużą ilością pamięci usługa Azure HPC oferuje rozmiary maszyn wirtualnych HBv2 i HBv3.
  • Używaj maszyn wirtualnych HB na potrzeby aplikacji powiązanych z przepustowością pamięci i maszyn wirtualnych HC na potrzeby symulacji zbiorników powiązanych z obliczeniami.
  • Używaj maszyn wirtualnych serii NV do modelowania 3D złóż i wizualizacji danych sejsmicznych.
  • W przypadku analizy FWI przyspieszonego sejsmicznego procesora GPU zalecanym rozwiązaniem jest NCv4. W przypadku bardziej intensywniejszego przetwarzania RTM jednostka SKU NDv4 jest najlepszą opcją dzięki dostępności dysków NVMe o skumulowanej pojemności wynoszącej 7 TB. Aby uzyskać najlepszą możliwą wydajność na maszynach wirtualnych serii HB z obciążeniami MPI, wykonaj optymalny proces przypinania do rdzeni procesorów. Aby uzyskać więcej informacji, zobacz wpis w blogu Optymalne umieszczanie procesów MPI dla maszyn wirtualnych serii Azure HB. Dostępne są również dedykowane narzędzia w celu zapewnienia poprawnego przypinania równoległych procesów aplikacji zgodnie z opisem w tym miejscu.
  • Ze względu na złożoną architekturę maszyn wirtualnych serii NDv4 należy zwrócić szczególną uwagę podczas konfigurowania maszyn wirtualnych w celu zapewnienia optymalnego uruchamiania aplikacji przyspieszanych przez procesor GPU. Aby uzyskać więcej informacji na temat obliczeń o wysokiej wydajności platformy Azure, zobacz wpis w blogu dotyczącym skalowalnego procesora GPU platformy Azure.

Architektura referencyjna HPC

Poniżej przedstawiono przypadki użycia i architektury referencyjne dla środowisk HPC energii.

Przypadki użycia architektury referencyjnej ropy naftowej i gazu oraz symulacji zbiorników

Często zarówno przepływy pracy zbiorników, jak i sejsmicznych mają podobne wymagania dotyczące planowania zasobów obliczeniowych i zadań. Jednak obciążenia sejsmiczne są wyzwaniem dla infrastruktury magazynu z potencjalnie wielo pb i wymaganiami dotyczącymi przepływności, które mogą być mierzone w setkach GB. Na przykład pojedynczy projekt przetwarzania sejsmicznego może rozpoczynać się od 500 TB danych pierwotnych, co wymaga potencjalnie kilku PB długoterminowego przechowywania. Poniżej przedstawiono kilka dostępnych obecnie architektur referencyjnych, które mogą pomóc w pomyślnym osiągnięciu celów dotyczących uruchamiania aplikacji na platformie Azure.

Przypadek użycia i architektura referencyjna przetwarzania sejsmicznego

Przetwarzanie sejsmiczne i obrazowanie są fundamentalne dla działalności w zakresie ropy naftowej i gazu, ponieważ tworzą model podpowierzchniowej z danych eksploracji. Proces kwalifikowania i kwantyfikacji tego, co może znajdować się w podpowierzchniu, jest zwykle prowadzony przez geoznawców. Geoscientists korzystają z oprogramowania, które jest często związane z centrum danych i chmurą. Czasami uzyskują dostęp do oprogramowania za pomocą technologii pulpitu wirtualnego zdalnie lub w chmurze.

Jakość modelu podpowierzchniowego oraz jakość i rozdzielczość danych ma kluczowe znaczenie dla podejmowania odpowiednich decyzji biznesowych dotyczących licytacji na dzierżawy lub decydowania o tym, gdzie należy przejść do szczegółów. Obrazy interpretacji obrazów sejsmicznych mogą poprawić położenie studni i zmniejszyć ryzyko wiercenia "suchej dziury". W przypadku firm naftowych i gazowych lepsze zrozumienie struktur podpowierzchniowych przekłada się bezpośrednio na zmniejszenie ryzyka poszukiwawczego. Zasadniczo im większa dokładność widoku firmy na obszar geologiczny, tym większa szansa na uderzenie ropy naftowej podczas wiercenia.

To zadanie dotyczy danych i intensywnie korzystających z zasobów obliczeniowych. Firma musi przetwarzać terabajty danych, wymagając dużej i szybkiej mocy obliczeniowej, która obejmuje szybką sieć. Ze względu na intensywny charakter przetwarzania danych i przetwarzania obrazów sejsmicznych firmy wykorzystują przetwarzanie równoległe do przetwarzania danych i skracają czas kompilacji i ukończenia. Firmy nieustannie przetwarzają duże ilości danych pozyskiwania sejsmicznego, aby zlokalizować, dokładnie oszacować i zakwalifikować zawartość węglowodorów w zbiornikach odnalezionych w podpowierzchniu przed rozpoczęciem operacji odzyskiwania. Ponieważ dane pozyskiwania są nieustrukturyzowane i mogą łatwo osiągać poziomy petabajtów dla jednego potencjalnego pola ropy naftowej i gazu, aktywność przetwarzania sejsmicznego można wykonać tylko w ramach znaczącej skali czasu przy użyciu obliczeń HPC i odpowiednich strategii zarządzania danymi.

Diagram połączeń między sieciami obliczeniowych i magazynowych — interpretacja i modelowanie sejsmiczne.

Diagram architektury referencyjnej sieci — przetwarzanie sejsmiczne.

Przypadek użycia i architektura referencyjna dla symulacji i modelowania zbiorników

Modelowanie zbiorników umieszcza również wartości w fizycznych cechach podpowierzchniowych, takich jak nasycenie wody, porowatość i przepuszczalność. Te dane są ważne w określaniu rodzaju podejścia do odzyskiwania i sprzętu do wdrożenia, a ostatecznie, gdzie najlepiej umieścić studnie.

Obciążenie modelowania zbiorników jest również obszarem inżynierii zbiorników. Obciążenie łączy fizykę, matematykę i programowanie komputerowe w modelu zbiorników, aby analizować i przewidywać zachowanie płynów w zbiorniku w czasie. Ta analiza wymaga dużej mocy obliczeniowej i zwykle dużych obciążeń obliczeniowych, w tym szybkich sieci.

Diagram architektury referencyjnej sieci — symulacja zbiorników.

Diagram przedstawiający międzyoperacyjną analizę obliczeniową i sejsmiczną magazynu w sieci.

Aby uzyskać więcej informacji na temat architektury referencyjnej lub książek kucharskich dla odpowiednich aplikacji niezależnych dostawców oprogramowania HPC obsługujących obliczenia HPC dla przypadków użycia energii, zobacz:

Następne kroki

Poniższe artykuły zawierają wskazówki dotyczące poszczególnych kroków procesu wdrażania chmury w środowiskach HPC energii.