Delen via


HPC (High Performance Computing) op Azure

Kennismaking met HPC

HpC (High Performance Computing), ook wel big compute genoemd, gebruikt een groot aantal CPU- of GPU-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:

  • Genomica
  • Olie- en gassimulaties
  • Finance
  • Ontwerp van halfgeleiders
  • Techniek
  • 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 die overeenkomt met de behoeften van hun werkzaamheden.

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

Controlelijst voor implementatie

Als u uw eigen HPC-oplossing op Azure wilt implementeren, moet u ervoor zorgen dat u de volgende onderwerpen hebt bekeken:

Infrastructuur

Er zijn veel infrastructuuronderdelen die nodig zijn om een HPC-systeem te bouwen. Compute, opslag en netwerken bieden de onderliggende onderdelen, ongeacht hoe u ervoor kiest om uw HPC-workloads te beheren.

Compute

Azure biedt een reeks groottes 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 zijn veel oplossingen die de snelheids- en capaciteitsbehoeften van HPC-toepassingen op Azure beheren:

Raadpleeg de Parallel Files Systems op Azure e-book en de Lustre op Azure blog voor meer informatie over het vergelijken van Lustre, GlusterFS en BeeGFS op 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 Message Passing Interface, beter bekend als MPI of Intel MPI.

Beheer

Doe-het-zelf

Het bouwen van een volledig nieuw HPC-systeem op Azure biedt een aanzienlijke mate van flexibiliteit, maar het is vaak erg onderhoudsintensief.

  1. Stel uw eigen clusteromgeving in Azure virtuele machines of Virtual Machine Scale Sets in.
  2. Gebruik Azure Resource Manager-sjablonen om toonaangevende workloadmanagers, infrastructuur en toegebruikingen te implementeren.
  3. Kies HPC- en GPU-VM-grootten met gespecialiseerde hardware- en netwerkverbindingen voor MPI- of GPU-workloads.
  4. Voeg opslagruimte met hoge prestaties toe voor I/O-intensieve workloads.

Hybride en cloudbursting

Als u een bestaand on-premises HPC-systeem hebt waarmee u verbinding wilt maken met Azure, zijn er verschillende bronnen om u op weg te helpen.

Bekijk eerst het Options voor het verbinden van een on-premises netwerk met Azure artikel in de documentatie. Hier vindt u aanvullende informatie over deze connectiviteitsopties:

Zodra de netwerkverbinding veilig tot stand is gebracht, kunt u cloud-rekenresources op aanvraag gaan gebruiken met de bursting-mogelijkheden van uw bestaande workloadmanager.

Marketplace-oplossingen

Er worden veel workloadbeheerders aangeboden in de Microsoft Marketplace.

Azure Batch

Azure Batch is een platformservice voor het efficiënt uitvoeren van grootschalige parallelle en HPC-toepassingen in de cloud. Azure Batch plant rekenintensief werk dat moet worden uitgevoerd op een beheerde pool van virtuele machines en kan rekenresources automatisch worden geschaald om te voldoen aan de behoeften van uw taken.

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

In Azure Batch worden alle services uitgevoerd in de cloud. In de volgende afbeelding ziet u hoe de architectuur eruitziet met Azure Batch, waarbij de configuraties voor schaalbaarheid en taakplanning in de cloud worden uitgevoerd terwijl de resultaten en rapporten naar uw on-premises omgeving kunnen worden verzonden.

Diagram toont een voorbeeld van hpc-architectuur voor Azure Batch.

Azure CycleCloud

Azure CycleCloud Biedt de eenvoudigste manier om HPC-workloads te beheren met behulp van elke scheduler (zoals Slurm, Grid Engine, HPC Pack, HTCondor, LSF, PBS Pro of Symphony), op 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
Hybride/cloud-burstingmodel

In dit hybride voorbeelddiagram zien we duidelijk hoe deze services worden gedistribueerd tussen de cloud en de on-premises omgeving. De mogelijkheid om taken in beide workloads uit te voeren. Diagram toont een voorbeeld van hpc-architectuur voor CycleCloud op Azure in een Hybrid.

Cloud-native model

In het volgende voorbeelddiagram van het cloudeigen model ziet u hoe de workload in de cloud alles verwerkt terwijl de verbinding met de on-premises omgeving nog steeds wordt bespaard.

Diagram toont een voorbeeld van hpc-architectuur voor CycleCloud op Azure in systeemeigen cloudmodel.

Vergelijkingsgrafiek

Feature Azure Batch Azure CycleCloud
Taakplanner Batch-API's en hulpprogramma's en opdrachtregelscripts in de Azure portal (Cloud Native). Gebruik standaard HPC-planners zoals Slurm, PBS Pro, LSF, Grid Engine en HTCondor, of breid automatische schaalaanpassingsinvoegtoepassingen van CycleCloud uit om met uw eigen planner te werken.
Computerbronnen Software als een Dienst Nodes – Platform als een Dienst Platform als een Dienst Software – Platform als een Dienst
Monitorhulpmiddelen Azure Monitor Azure Monitor, Grafana
Aanpassingsmogelijkheden Aangepaste afbeeldingsbibliotheken, afbeeldingen van derden, Toegang tot Batch API. Gebruik de uitgebreide RESTful-API om functionaliteit aan te passen en uit te breiden, uw eigen planner te implementeren en ondersteuning te bieden in bestaande workloadmanagers
Integratie Data Factory in Microsoft Fabric, Azure Data Factory, Azure CLI Built-In CLI voor Windows en Linux
Gebruikerstype Developers Klassieke HPC-beheerders en -gebruikers
Werksoort Batch, werkstromen Nauw gekoppeld (Message Passing Interface/MPI).
ondersteuning voor Windows Ja Varieert, afhankelijk van de keuze van de planner

Werkbelastingbeheerders

Hier volgen voorbeelden van cluster- en workloadbeheerders die kunnen worden uitgevoerd in Azure infrastructuur. Maak zelfstandige clusters in Azure-VM's of uitbreiden naar Azure-VM's vanuit een on-premises cluster.

Containers

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

Kostenbeheer

U kunt uw HPC-kosten op Azure op verschillende manieren beheren. Zorg ervoor dat u de Azure aankoopopties hebt bekeken om de methode te vinden die het beste werkt voor uw organisatie.

Beveiliging

Raadpleeg de Azure Beveiligingsdocumentatie voor een overzicht van aanbevolen beveiligingsprocedures voor Azure.

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

HPC-toepassingen

Aangepaste of commerciële HPC-toepassingen uitvoeren in Azure. Verschillende voorbeelden in deze sectie zijn getest om efficiënt te schalen met aanvullende virtuele machines of rekenkernen. Ga naar de Microsoft Marketplace voor kant-en-klare oplossingen.

Opmerking

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-aanbieders

Visualisatie op afstand

Voer virtuele machines met GPU uit in Azure in dezelfde regio als de HPC-uitvoer voor de laagste latentie, toegang en om extern te visualiseren via Azure Virtual Desktop.

Prestatiebenchmarks

Andere belangrijke informatie

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

Volgende stappen 

Zie de volgende bronnen voor de meest recente aankondigingen:

Microsoft Batch-voorbeelden

In deze zelfstudies vindt u meer informatie over het uitvoeren van toepassingen in Microsoft Batch: