HPC (High Performance Computing) in Azure

Kennismaking met HPC

High Performance Computing (HPC), ook wel 'Big Compute' genoemd, maakt gebruik van een groot aantal op CPU of GPU gebaseerde computers om complexe wiskundige taken op te lossen.

HPC wordt in veel bedrijfstakken gebruikt voor het oplossen van de moeilijkste problemen. Deze omvatten workloads zoals:

  • Genomics
  • Olie- en gassimulaties
  • Finance
  • Ontwerp van halfgeleiders
  • Engineering
  • Weermodellen

Hoe is HPC anders in de cloud?

Een van de belangrijkste verschillen tussen een on-premises HPC-systeem en een in de cloud is de mogelijkheid om resources dynamisch toe te voegen en te verwijderen wanneer ze nodig zijn. Dankzij dynamische schaling wordt rekencapaciteit als een knelpunt verwijderd en kunnen klanten hun infrastructuur op de juiste grootte schalen, overeenkomstig de behoeften van hun werkzaamheden.

In de volgende artikelen vindt u meer informatie over deze mogelijkheid tot dynamische schaling.

Controlelijst voor implementatie

Zorg ervoor dat u de volgende onderwerpen hebt doorgenomen wanneer u uw eigen HPC-oplossing wilt gaan implementeren in Azure:

  • De juiste architectuur kiezen op basis van uw vereisten
  • Weten welke compute-optie geschikt is voor uw workload
  • De juiste opslagoplossing vinden die overeenkomt met uw behoeften
  • Bepalen hoe u al uw resources gaat beheren
  • Uw toepassing optimaliseren voor de cloud
  • Uw infrastructuur beveiligen

Infrastructuur

Er is een aantal infrastructuuronderdelen nodig voor het bouwen van een HPC-systeem. Compute, opslag en netwerken bieden de onderliggende onderdelen, ongeacht hoe u uw HPC-workload gaat beheren.

Voorbeeld van HPC-architecturen

U kunt uw HPC-architectuur in Azure op een aantal verschillende manieren ontwerpen en implementeren. HPC-toepassingen kunnen worden geschaald naar duizenden rekenkernen, worden uitgebreid naar on-premises clusters of als een oplossing voor 100% in de cloud worden uitgevoerd.

De volgende scenario's bevatten een aantal van de gebruikelijke manieren waarop HPC-oplossingen worden gebouwd.

  • Diagram shows example HPC architecture for computer-aided engineering services on Azure.

    Computer-aided engineering-service in Azure

    Bied een software-as-a-service (SaaS)-platform voor computer-aided engineering (CAE) in Azure.

  • Diagram shows example HPC architecture for computational fluid dynamics simulations on Azure.

    Vloeistofdynamicasimulaties (computational fluid dynamics, CFD) in Azure

    Voer vloeistofdynamicasimulaties (computational fluid dynamics, CFD) uit in Azure.

  • Diagram shows example HPC architecture for 3D video rendering on Azure.

    3D-videorendering in Azure

    Voer systeemeigen HPC-workloads uit in Azure met behulp van de Azure Batch-service

Compute

Azure biedt een scala aan grootten die zijn geoptimaliseerd voor zowel CPU- als GPU-intensieve workloads.

Virtuele machines op basis van CPU

Virtuele machines met GPU

Virtuele machines uit de N-serie zijn voorzien van NVIDIA GPU's die zijn ontworpen voor rekenintensieve of grafisch-intensieve toepassingen, met inbegrip van AI-learning en -visualisatie (kunstmatige intelligentie).

Storage

Grootschalige Batch- en HPC-workloads hebben vereisten voor gegevensopslag en toegang die hoger zijn dan de mogelijkheden van traditionele cloud-bestandssystemen. Er is een aantal oplossingen voor het beheren van de behoeften op het gebied van snelheid en capaciteit van HPC-toepassingen in Azure

Lees het e-book Parallel Files Systems on Azure (Parallelle bestandensystemen op Azure) en het blog Over parallelle bestandssystemen in Azure (In azure) voor meer informatie over het vergelijken van Zowelre, TermijnsterFS en BeeGFS in Azure.

Netwerken

H16r-, H16mr A8- en A9-VM's kunnen verbinding maken met back-end RDMA-netwerk met een hoge doorvoer. Dit netwerk kan de prestaties verbeteren van nauw gekoppelde parallelle toepassingen die worden uitgevoerd onder Microsoft MPI of Intel MPI.

Beheer

Doe-het-zelf

Het volledig nieuw bouwen van een HPC-systeem in Azure biedt een aanzienlijke hoeveelheid flexibiliteit, maar is vaak zeer onderhoudsintensief.

  1. Stel uw eigen clusteromgeving in op virtuele Azure-machines of virtuele-machineschaalsets.
  2. Gebruik Azure Resource Manager-sjablonen om toonaangevende workloadmanagers, infrastructuur en toepassingen te implementeren.
  3. Kies HPC- en GPU-VM-grootten die gespecialiseerde hardware- en netwerkverbindingen voor MPI- of GPU-workloads bevatten.
  4. Voeg opslag met hoge prestaties toe voor I/O-intensieve workloads.

Hybride en cloudbursting

Als u een bestaand on-premises HPC-systeem hebt dat u wilt verbinden met Azure, zijn er een aantal resources om u op weg te helpen.

Lees eerst het artikel Opties voor het verbinden van een on-premises netwerk met Azure in de documentatie. Daarna wilt u mogelijk informatie over deze verbindingsopties:

Als de verbinding met het netwerk veilig tot stand is gebracht, kunt u cloudcomputing-resources on-demand gaan gebruiken met de burstingmogelijkheden van uw bestaande workloadmanager.

Microsoft Azure Marketplace-oplossingen

Er wordt een aantal workloadmanagers aangeboden op de Microsoft Azure Marketplace.

Azure Batch

Azure Batch is een platformservice voor het efficiënt uitvoeren van grootschalige parallelle en HPC-toepassingen (High Performance Computing) in de cloud. Azure Batch plant de uitvoering van rekenintensief werk op een beheerde pool van virtuele machines en kan automatisch het aantal rekenresources aanpassen aan de behoeften van uw werkzaamheden.

SaaS-providers of -ontwikkelaars kunnen de Batch-SDK's en hulpprogramma's gebruiken om HPC-toepassingen of -containerworkloads met Azure te integreren, gegevens te faseren naar Azure en pijplijnen voor taakuitvoering te bouwen.

Azure CycleCloud

Azure CycleCloud biedt de eenvoudigste manier om uw HPC-workloads te beheren met veel verschillende taakplanners (zoals Slurm, Grid Engine, HPC Pack, HTCondor, LSF, PBS Pro of Symphony) in Azure

Met CycleCloud kunt u het volgende:

  • Volledige clusters en andere resources implementeren, waaronder taakplanners, Compute-VM's, opslag, netwerken en cache
  • Taak-, gegevens- en cloudwerkstromen organiseren
  • Beheerders volledige controle geven over welke gebruikers taken kunnen uitvoeren, evenals waar en tegen welke kosten
  • Clusters aanpassen en optimaliseren via geavanceerde beleids- en governancefuncties, waaronder kostenbeheer, Active Directory-integratie, bewaking en rapportage
  • Uw huidige taakplanner en toepassingen zonder aanpassing gebruiken
  • Ingebouwde automatische schaalaanpassing en beproefde referentiearchitecturen inzetten voor veel verschillende HPC-workloads en branches

Workloadmanagers

Hier volgen enkele voorbeelden van cluster- en workloadmanagers die kunnen worden uitgevoerd in de Azure-infrastructuur. Maak zelfstandige clusters in Azure-VM's of voer bursting uit naar Azure VM's vanuit een on-premises cluster.

Containers

Containers kunnen ook worden gebruikt voor het beheren van sommige HPC-workloads. Services als de Azure Kubernetes Service (AKS) maken het eenvoudig om een ​​beheerd Kubernetes-cluster in Azure te implementeren.

Kostenbeheer

U kunt uw HPC-kosten in Azure op een aantal verschillende manieren beheren. Zorg ervoor dat u de Aankoopmogelijkheden voor Azure hebt bekeken om de methode te vinden die het meest geschikt is voor uw organisatie.

Beveiliging

Raadpleeg de Documentatie over Azure-beveiliging voor een overzicht van aanbevolen beveiligingsprocedures in Azure.

Naast de netwerkconfiguraties die beschikbaar zijn in de sectie Cloudbursting, wilt u mogelijk een kunt u een hub/spoke-configuratie implementeren om uw rekenresources te isoleren:

HPC-toepassingen

Aangepaste of commerciële HPC-toepassingen uitvoeren in Azure. In enkele voorbeelden in deze sectie kan standaard efficiënt worden geschaald met aanvullende virtuele machines of rekenkernen. Ga naar de Microsoft Azure Marketplace voor kant-en-klare oplossingen.

Notitie

Neem contact op met de leverancier van een commerciële toepassing, voor licentieverlening of andere beperkingen voor het uitvoeren van die toepassing in de cloud. Niet alle leveranciers bieden licenties waarbij u betaalt naar gebruik. Mogelijk hebt u voor uw oplossing een licentieserver in de cloud nodig of moet u verbinding maken met een on-premises licentieserver.

Engineeringtoepassingen

Grafische afbeeldingen en weergaven

AI en deep learning

MPI-providers

Visualisatie op afstand

Prestatiebenchmarks

Verhalen van klanten

Diverse klanten hebben goede successen behaald door Azure te gebruiken voor hun HPC-workloads. Hieronder vindt u enkele van deze casestudy's:

Andere belangrijke informatie

  • Zorg ervoor dat uw vCPU-quotum is verhoogd voordat u grootschalige workloads gaat uitvoeren.

Volgende stappen

Zie voor de nieuwste aankondigingen:

Voorbeelden van Microsoft Batch

Deze zelfstudies bieden u meer informatie over het uitvoeren van toepassingen in Microsoft-Batch