Nous avons le plaisir d'annoncer la publication d'un aperçu public d'une image de machine virtuelle (VM) basée sur CentOS 7 optimisée pour le calcul haute performance (HPC). Il est principalement conçu pour les charges de travail MPI (Message Passing Interface) étroitement couplées. Cet article détaille l'image de machine virtuelle spécifique au HPC et ses avantages. Pour créer directement des instances à partir de cette image, lisez la documentation et le démarrage rapide.
En 2020, nous avons parlé d'un certain nombre de fonctions et de paramètres pour optimiser l'interface MPI sur la plateforme Google Cloud. Ils réduisent le délai de messagerie à quelques microsecondes. et fournir la livraison de petits messages MPI en 10 microsecondes ou moins. L'optimisation MPI améliore la mise à l'échelle des applications et augmente le nombre de tâches pouvant être effectuées sur la plate-forme Google Cloud. Cependant, pour créer une image de VM avec ces techniques à l'esprit, vous avez besoin d'une compréhension approfondie des systèmes et de la plate-forme Google Cloud. Par conséquent, il est plus logique de commencer à travailler avec une image initialement calculée et préparée pour le calcul haute performance. Il vous permet de déployer facilement une instance de VM optimisée pour des performances optimales du processeur et du réseau sur Google Cloud. L'image de la VM HPC est disponible sur Google Cloud Marketplace sans frais supplémentaires.
Avantages de l'image de VM HPC par rapport aux images de VM traditionnelles
Lorsque vous choisissez une image de VM HPC, vous bénéficiez d'une configuration prête à l'emploi et d'une maintenance régulière, ainsi que des avantages HPC suivants sur Google Cloud:
- Créez facilement des machines virtuelles adaptées aux charges de travail étroitement couplées . Créez facilement une machine virtuelle HPC et mettez régulièrement à jour sa configuration avec les derniers paramètres.
- Optimiser les réseaux pour les systèmes étroitement couplés. Réduisez la latence des petits messages et accélérez les applications qui nécessitent une communication point à point ou partagée.
- Un calcul plus efficace. Améliorez les performances sur les nœuds individuels en réduisant les vibrations du système.
- Performances stables et reproductibles de plusieurs nœuds. Appliquez des paramètres qui ont fait leurs preuves sur une variété de tâches HPC.
L'image de machine virtuelle HPC remplace facilement l'image standard basée sur CentOS 7.
Exemple concret: mise à l'échelle du programme d'équation SDPB avec CloudyCluster et HPC VM Image
Walter Londry de Caltech Particle Theory Group développe un logiciel de recherche pour le projet international Bootstrap Collaboration . Le projet utilise un programme semi-défini pour la résolution d'équations (SDPB) . Avec son aide, les théories quantiques des champs sont étudiées en relation avec un large éventail de problèmes de physique théorique, tels que l'expansion de l'Univers primitif, les supraconducteurs, l'effet Hall quantique et les transitions de phase.
Pour étendre la puissance de calcul du projet, Londri a décidé de faire évoluer le programme SDPB sur la plate-forme Google Cloud. Utilisation d' Omnibond CloudyCluster et une image de VM pour HPC, il a pu amener le projet à des niveaux de performances et d'évolutivité comparables à un cluster local à Yale, basé sur des ordinateurs dotés de processeurs Intel Xeon Gold 6240 et de la technologie Infiniband FDR.
L'instance C2-Standard-60 pour Google Cloud utilise des processeurs évolutifs Intel Xeon de 2e génération. Les instances C2 prennent en charge les règles de placement qui réduisent la latence de communication entre les nœuds, elles sont donc idéales pour les charges de travail MPI étroitement couplées. CloudyCluster contient nativement l'image de la VM HPC et les règles de placement pour la famille C2, les chercheurs n'ont donc rien à faire de plus. Des tests ont montré que Google Cloud peut faire évoluer les charges de travail à faible latence sur plusieurs instances.
Si vous voulez voir cela par vous-même, visitez le Google Cloud MarketplaceUne version mise à jour du CloudyCluster d'Omnibond est disponible avec une image de VM HPC. Cette version inclut également l'application Open OnDemand, qui est distribuée par l'Ohio State Supercomputing Center et financée par NSF. Il permet aux administrateurs système de fournir facilement un accès Web aux ressources HPC.
Capacités d'image de VM de calcul haute performance
Paramètres et optimisation. L'image actuelle de la machine virtuelle HPC se concentre sur le réglage des charges de travail étroitement couplées et utilise les améliorations de performances MPI suivantes:
- Intel Hyper-Threading. Intel Hyper-Threading . .
- MPI. MPI MPI. MPI Intel, MPI.
- tcp_*mem. C2 32 / TCP Linux.
- busy polling. busy polling , , .
- . , () , , , .
- Désactivez les pare - feu Linux et la technologie SELinux. Le moteur et le pare-feu SELinux, qui sont activés par défaut pour les images CentOS Linux sur Google Cloud, ne sont pas utilisés dans l'image de la VM HPC. Cela améliore les performances de MPI.
- Désactivez l'utilitaire CPUIdle. Les machines virtuelles C2 conservent un état inactif du processeur et peuvent entrer en mode basse consommation. En désactivant l'utilitaire CPUIdle, vous pouvez ramener la latence à un niveau constamment bas.
L'efficacité de ces paramètres dépend de l'application spécifique. Nous vous recommandons de les tester en pratique pour trouver la configuration la plus puissante et la plus économique.
Analyse comparative de l'efficacité des images
Nous avons comparé les performances d'une image HPC VM et d'une image standard CentOS 7 à l'aide d'applications Intel MPI Benchmarks et d'analyse par éléments finis du monde réel (ANSYS LS-DYNA), de dynamique des fluides (ANSYS Fluent) et d'applications météorologiques (WRF).
Dans cette section, les versions suivantes de l'image de la machine virtuelle HPC et de l'image CentOS ont été prises à des fins de comparaison:
- Image de machine virtuelle HPC: hpc-centos-7-v20210119 (paramètres --nomitigation et mpitune appliqués comme recommandé dans la documentation )
- Image CentOS : centos-7-v20200811
Intel MPI Benchmark (IMB) Ping-Pong - utilisé pour mesurer la latence d'un message de taille fixe entre deux rangs sur une paire de machines virtuelles. Il s'est avéré que lors de l'utilisation d'une image de VM pour HPC, la latence est en moyenne 50% inférieure à celle de l'image standard CentOS 7.
Configuration du test:
- 2 VM C2-standard-60 avec règles de placement compactes
- Bibliothèque MPI : Intel MPI Library 2018 Update 4
- Commande de lancement : mpirun -genv I_MPI_PIN = 1 -genv I_MPI_PIN_PROCESSOR_LIST = 0 -hostfile <hostfile> -np 2 -ppn 1 IMB-MPI1 Pingpong -iter 50000
Résultats
Le test AllReduce Intel MPI Benchmark (IMB) est utilisé pour mesurer la latence collective lors du transfert de données entre plusieurs rangs via une VM. Il réduit un vecteur de longueur fixe à l'aide de l'opération MPI_SUM. Les résultats sont affichés pour un PPN (processus par nœud), où il y a 1 rang MPI par nœud et 30 threads par rang, et les résultats pour 30 PPN, lorsqu'il y a 30 rangs MPI par nœud et 1 thread par rang. Par rapport à l'image CentOS 7 standard, l'image de la machine virtuelle HPC s'est avérée réduire la latence AllReduce pour 240 rangs MPI sur 8 nœuds (30 processus par nœud) jusqu'à 40%.
Configuration du test:
- 8 VM C2-standard-60 avec règles de placement compactes
- Bibliothèque MPI : Intel MPI Library 2018 Update 4
- a : mpirun -tune -genv I_MPI_PIN=1 -genv I_MPI_FABRICS ‘shm:tcp’ -hostfile <hostfile> -np <#vm*ppn> -ppn <ppn> IMB-MPI1 AllReduce -iter 50000 -npmin <#vm*ppn>
Résultats
Tests Applications HPC: LS-DYNA, Fluent et WRF. En utilisant une image HPC VM au niveau de la couche application, jusqu'à 25% de gains de performances ont été observés lors de la simulation de collision à 3 voitures dans l'analyse ANSYS LS-DYNA (en utilisant 240 rangs MPI dans 8 instances C2 basées sur le processeur Intel Xeon) ... Dans le cadre de l'analyse ANSYS Fluent et WRF, l'image de la machine virtuelle HPC a fourni une amélioration des performances de 6% par rapport à l'image CentOS standard.
Configuration du test:
- ANSYS LS-DYNA (modèle «3 voitures») : 8 VM C2-standard-60 avec règles de placement compactes, utilisant le code binaire LS-DYNA MPP compilé avec AVX-2
- ANSYS Fluent ( “aircraft_wing_14m”): 12 C2-standard-60
- WRF V3 Parallel Benchmark (12 KM CONUS): 16 C2-standard-60
- MPI: Intel MPI Library 2018 ( 4)
? SchedMD Slurm Linux
Nous élargirons la liste des solutions partenaires qui utilisent l'image de machine virtuelle HPC par défaut. À partir du mois prochain, tous les clients Slurm pourront exécuter des clusters à l'aide de l'image de la VM HPC par défaut (aperçu disponible ici ).
Bonne nouvelle pour tous ceux qui recherchent une version entreprise de Linux pour le calcul haute performance! SUSE travaille avec Google pour développer une image de VM SUSE Enterprise HPC optimisée pour Google Cloud. Si vous souhaitez plus d'informations ou demander d'autres intégrations et distributions Linux, veuillez nous contacter...
Commencer aujourd'hui!
Un aperçu de l'image de la VM HPC est désormais disponible pour tous les utilisateurs de Google Cloud Marketplace . Pour plus d'informations sur l'instanciation à l'aide d'une image de machine virtuelle HPC, consultez la documentation et le démarrage rapide. Nous vous rappelons également que lors de votre première inscription à Google Cloud: des bonus d'une valeur de 300 $ vous sont offerts et plus de 20 produits gratuits sont toujours disponibles. Vous pouvez essayer GCP via le lien dédié .
Un merci spécial aux collègues Jiu Xiao Liu, Tanner Love, Yang Jian, Hong Bo Lu et Pallawi Feng pour leur aide dans la préparation du matériel.