Résoudre l'énigme des connaissances avec le HPC et l'IA
Publié: 2021-12-15Le supercalcul a parcouru un long chemin depuis ses débuts dans les années 1960. Au départ, de nombreux supercalculateurs étaient centrés sur les ordinateurs centraux, même si leur prix et leur complexité constituaient des barrières importantes à l'entrée pour de nombreux établissements. L'idée d'utiliser un certain nombre de PC à très faible coût autour d'une communauté pour présenter un type de calcul parallèle rentable a conduit les institutions d'exploration sur la voie de la mise en place de clusters de calcul à efficacité supérieure (HPC) avec des clusters "Beowulf" dans les années 90. .
Les clusters Beowulf sont en grande partie les prédécesseurs des clusters HPC actuels. Les principes fondamentaux de l'architecture Beowulf sont toujours applicables aux déploiements HPC quotidiens actuels. Néanmoins, un certain nombre d'ordinateurs de bureau ont été modifiés avec des plates-formes de serveur à densité élevée spécialement créées. La mise en réseau s'est sensiblement améliorée, avec une bande passante plus élevée / une latence réduite InfiniBand (ou, comme un clin d'œil au passé, de plus en plus Ethernet) et des systèmes de fichiers parallèles à haute performance générale tels que SpectrumScale, Lustre et BeeGFS ont été conçus pour permettre au stockage de continuer à garder avec le calcul. L'amélioration d'excellents équipements, souvent open source, pour contrôler l'informatique dispersée à haut rendement a également rendu l'adoption beaucoup plus simple.
Plus récemment, nous avons assisté à l'évolution du HPC des clusters authentiques dépendants du processeur vers des programmes qui effectuent l'essentiel de leur traitement sur des modèles de traitement graphique (GPU), ce qui a entraîné le développement de l'informatique accélérée par GPU.
Facts and Compute - Le but du GPU
Bien que HPC évoluait avec une source de calcul supplémentaire, les informations se développaient à une vitesse beaucoup plus rapide. Depuis le début de 2010, il y a eu une explosion substantielle des informations non structurées provenant de ressources telles que les discussions en ligne, les caméras, les capteurs, les communications vidéo en ligne, etc. Cela a introduit de grandes difficultés de données pour le stockage, le traitement et le transfert. Des paradigmes d'innovation technologique plus récents tels que les données volumineuses, l'informatique parallèle, l'informatique en nuage, le Net of Issues (IoT) et l'intelligence synthétique (IA) sont arrivés dans le courant dominant pour faire face aux problèmes déclenchés par l'assaut de l'information.
Ce que ces paradigmes ont tous en commun, c'est qu'ils sont actuellement capables d'être parallélisés à un degré supérieur. Le calcul parallèle GPU de HPC a été un véritable changeur d'activité pour l'IA, car le calcul parallèle peut traiter toutes ces données, dans un volume de temps limité en travaillant avec des GPU. Au fur et à mesure que les charges de travail se sont développées, le calcul parallèle GPU et la découverte de machines IA se sont également développés. L'évaluation d'impression est un exemple fantastique de la façon dont la puissance électrique de l'informatique GPU peut aider un projet d'IA. Avec un seul GPU, il ne faudrait que 72 heures pour approcher un produit d'imagerie d'étude approfondie, mais il ne faudra que 20 minutes pour faire fonctionner le même produit d'IA sur un cluster HPC avec 64 GPU.
Comment le HPC soutient-il les progrès de l'IA ?
Beowulf est toujours lié aux charges de travail de l'IA. Le stockage, la mise en réseau et le traitement sont cruciaux pour que les tâches d'IA s'exécutent à grande échelle. C'est à ce moment que l'IA peut utiliser les environnements parallèles à grande échelle que l'infrastructure HPC (avec GPU) offre pour activer rapidement les charges de travail de cours d'action. Instruire un produit d'IA prend beaucoup plus de temps que tester un seul. L'avantage du couplage de l'IA avec le HPC est qu'il accélère considérablement la "phase de formation" et améliore la précision et la fiabilité des conceptions d'IA, tout en maintenant le temps de formation à un minimum.
L'application appropriée est recherchée pour prendre en charge le mélange HPC et AI. Il existe des produits et des objectifs conventionnels qui sont actuellement utilisés pour exploiter des charges de travail d'IA à partir d'environnements HPC uniquement, car beaucoup partagent les mêmes besoins pour agréger des pools de moyens substantiels et les gérer. D'un autre côté, tout, depuis les composants sous-jacents, les planificateurs utilisés, l'interface de passage de messages (MPI) et même la façon dont les logiciels sont emballés, commence à changer dans le sens de styles beaucoup plus adaptables, et une augmentation dans les environnements hybrides est un développement que nous supposons voir se poursuivre.
Les conditions d'utilisation courantes des programmes HPC étant si parfaitement éprouvées, les modifications se matérialisent généralement assez lentement mais sûrement. Même ainsi, les mises à jour de nombreuses applications HPC ne sont importantes que tous les 6 à 12 mois environ. D'autre part, les progrès de l'IA se produisent si rapidement que des mises à jour et de nouveaux objectifs, équipements et bibliothèques sont publiés jour après jour.
Si vous utilisiez les mêmes tactiques de mise à jour pour gérer votre IA que pour vos plates-formes HPC, vous seriez laissé à l'arrière. C'est pourquoi une résolution telle que le système conteneurisé DGX de NVIDIA vous permet de vous tenir au courant rapidement et facilement des développements rapides de NVIDIA GPU CLOUD (NGC), une base de données en ligne d'équipements AI et HPC encapsulée dans des conteneurs faciles à manger.
Il commence à être normal de s'appliquer dans la communauté locale HPC à utiliser un système conteneurisé pour contrôler les occasions qui sont avantageuses pour le déploiement de l'IA. La conteneurisation a accéléré les conseils pour les charges de travail d'IA sur les clusters HPC.
Fournir en retour - comment l'IA prend-elle en charge les problèmes HPC classiques ?
Les produits d'IA peuvent être utilisés pour prédire le résultat final d'une simulation sans avoir à exploiter l'intégralité de la simulation, gourmande en sources. En utilisant un produit d'IA de cette manière, les variables d'entrée/facteurs de curiosité peuvent être réduits à une liste de prospects immédiatement et à un coût nettement inférieur. Ces variables de prospect peuvent être exécutées via la simulation reconnue pour valider la prédiction du modèle d'IA.
Les simulations moléculaires quantiques (QMS), la structure des puces et la découverte de médicaments sont des endroits où cette procédure est de plus en plus utilisée, IBM a également récemment publié un élément qui fait spécifiquement cela appelé IBM Bayesian Optimization Accelerator (BOA).
Comment un intégrateur HPC peut-il vous aider avec votre infrastructure d'IA ?
Commencez par quelques questions simples Quelle est l'ampleur de ma difficulté ? À quelle vitesse est-ce que je veux que mes résultats reviennent ? Dans quelle mesure dois-je savoir comment procéder ? Combien de personnes partagent la ressource utile ?
Les procédures HPC permettront la gestion d'une entreprise d'IA si l'ensemble de données existant est important ou si des problèmes de concurrence sont actuellement rencontrés sur l'infrastructure en raison de l'obtention de divers utilisateurs. Si vous rencontrez un problème où vous devrez configurer quatre GPU sur un poste de travail et que cela pose un dilemme en déclenchant un goulot d'étranglement, vous devez consulter un intégrateur HPC, connaissant la mise à l'échelle de l'infrastructure pour ces types de charges de travail.
Certaines organisations peuvent exécuter des charges de travail d'IA sur un appareil massif ou un certain nombre de machines avec des GPU et votre infrastructure d'IA peut ressembler beaucoup plus à une infrastructure HPC que vous ne le pensez. Il existe des approches HPC, des applications et d'autres aspects qui peuvent certainement aider à réguler cette infrastructure. L'infrastructure semble être assez identique, mais il existe des moyens intelligents de l'installer et de s'en occuper, spécifiquement orientés vers la modélisation de l'IA.
Le stockage est assez généralement négligé lorsque les organisations créent une infrastructure pour les charges de travail d'IA, et vous n'obtenez peut-être pas le retour sur investissement total de votre infrastructure d'IA si votre calcul attend que votre stockage soit libéré. Il est important de rechercher les meilleurs conseils pour dimensionner et déployer la résolution de stockage idéale pour votre cluster.
Les gros détails ne doivent pas toujours être aussi massifs, c'est juste lorsqu'ils atteignent cette position qu'ils deviennent ingérables pour une organisation. Quand vous ne pouvez pas en tirer ce que vous voulez, alors ça devient trop énorme pour vous. Le HPC peut donner l'énergie de calcul nécessaire pour traiter les énormes quantités d'informations dans les charges de travail d'IA.
L'avenir prévisible
C'est une période fascinante pour le HPC et l'IA, car nous assistons à une adaptation progressive de chaque système. Les défis deviennent encore plus grands chaque jour ouvrable, avec des problèmes plus récents et plus distincts qui nécessitent des solutions plus rapides. Par exemple, contrer les cyber-attaques, identifier de nouveaux vaccins, détecter les missiles ennemis, etc.
Il sera intéressant de voir ce qui se passera ensuite dans des conditions d'inclusion d'environnements 100% conteneurisés sur des clusters HPC, et des technologies telles que les environnements Singularity et Kubernetes.
Les planificateurs lancent maintenant des carrières et tiennent jusqu'à ce qu'ils finissent, ce qui ne pourrait pas être une grande circonstance pour les environnements d'IA. Plus récemment, des planificateurs plus récents surveillent l'efficacité en temps réel et exécutent des carrières en fonction de la priorité et de l'exécution et seront capables de fonctionner avec des technologies et des environnements de conteneurisation tels que Kubernetes pour orchestrer la ressource utile requise.
Le stockage deviendra de plus en plus essentiel pour faciliter les déploiements massifs, car de vastes volumes de données doivent être stockés, étiquetés, étiquetés, nettoyés et déplacés rapidement. Des infrastructures telles que le stockage flash et la mise en réseau deviennent importantes pour votre défi, ainsi que des logiciels de stockage qui peuvent évoluer en fonction des besoins.
De même, le HPC et l'IA continueront d'avoir un impact sur les mêmes organisations et les uns sur les autres, et leur partenariat symbiotique ne fera que se renforcer, car les utilisateurs de HPC et les modélisateurs d'infrastructures d'IA tout aussi communs connaissent le potentiel total les uns des autres.
Vibin Vijay, spécialiste des solutions d'IA, OCF