Les scientifiques et les chercheurs en données développent à grande échelle de nouveaux processus de résolution de problèmes à forte intensité de calcul tels que les systèmes HPC. Les charges de travail d'IA et d'analyse de données bénéficient d'une infrastructure HPC qui évolue pour améliorer les performances. Aujourd'hui, nous allons parler des tendances de ce marché et des approches de création d'architecture pour DA, AI et HPC sous la coupe.
La tendance à la convergence des charges de travail modernes nécessite une architecture plus unifiée. Les charges de travail HPC traditionnelles (telles que la simulation) nécessitent une grande puissance de calcul, ainsi que des connexions réseau rapides et des systèmes de fichiers hautes performances. Par exemple, la création d'un modèle de réservoir pour un gisement minéral peut prendre de plusieurs heures à plusieurs jours.
Les charges de travail de l'intelligence artificielle et de l'analyse des données sont gourmandes en ressources, nécessitant des outils de collecte de données et des espaces de travail spécialisés pour que les opérateurs puissent traiter les données. L'intelligence artificielle et l'analyse de données sont des processus qui nécessitent une interaction interactive et des actions répétitives.
La différence entre les charges de travail HPC, AI et DA pourrait donner l'impression qu'elles nécessiteraient trois infrastructures distinctes, mais ce n'est pas le cas. L'architecture unifiée convient à la fois aux analystes de données et aux scientifiques travaillant avec l'intelligence artificielle, sans se recycler ni s'adapter au nouveau modèle d'exploitation.
Cependant, l'intégration des trois charges de travail sur une seule architecture pose des défis à prendre en compte:
- Les compétences des utilisateurs HPC, AI ou DA varient.
- Les systèmes de gestion des ressources et les planificateurs de charge ne sont pas interchangeables.
- Tous les logiciels et tous les frameworks ne sont pas intégrés dans une seule plateforme.
- Les écosystèmes nécessitent différents outils et fonctions.
- Les charges et leurs exigences de performance sont différentes.
La base des solutions clés en main de Dell Technologies
Les solutions d'IA et d'analyse de données prêtes à l'emploi de Dell Technologies fournissent un environnement unique pour les trois charges de travail. Ils sont construits en tenant compte de quatre principes de base:
- Disponibilité des données.
- Planification simple des travaux et gestion des ressources.
- Optimiser les charges de travail.
- Orchestration et conteneurisation intégrées.
Disponibilité des données
Les utilisateurs ont besoin d'un accès rapide à leurs données quelle que soit la charge de travail. Le mouvement des données doit être limité entre des environnements de stockage disparates. Les ensembles de données pour HPC, AI et DA doivent être combinés dans un seul environnement pour améliorer l'efficacité opérationnelle, en particulier si le flux de travail combine plusieurs techniques.
Par exemple, les systèmes avancés d'aide à la conduite utilisent des modèles météorologiques extrêmes pour éviter les accidents de conduite réelle par mauvais temps. Les nouvelles données sont ensuite utilisées pour entraîner le réseau neuronal profond: la sortie devient l'entrée pour l'apprentissage du modèle. Les résultats sont ensuite chargés dans Spark, qui est utilisé pour se connecter à l'ensemble de données actuel du client et sélectionner les meilleures données pour l'entraînement ultérieur du modèle. Pour de meilleures performances, les données reçues du workflow doivent être aussi proches que possible des données déjà disponibles.
Planification des travaux et gestion des ressources
Les consommateurs HPC font confiance aux planificateurs de travaux traditionnels tels que SLURM. Pour la planification par lots, SLURM alloue des ressources matérielles en fonction d'intervalles de temps et fournit un cadre pour lancer, exécuter et contrôler les travaux en cours d'exécution. SLURM fournit également la gestion de la file d'attente pour les tickets soumis afin d'éviter les conflits entre les tâches du cluster.
L'analyse des données utilise des planificateurs de tâches tels que Spark Standalone et Mesos. Une architecture prédéfinie pour le calcul haute performance et l'intelligence artificielle utilise Kubernetes pour orchestrer Spark et gérer les ressources pour les tâches exécutées. Étant donné qu'aucun planificateur de travaux ne traite les deux environnements, l'architecture doit prendre en charge les deux. Dell Technologies a développé une architecture qui répond à ces deux exigences.
L'architecture clé en main de Dell EMC pour le HPC, l'analyse des données et l'IA crée un pool unique de ressources. Les ressources peuvent être affectées de manière dynamique à toute tâche HPC gérée via HPC Resource Manager ou à des charges de travail d'IA ou d'analyse de données conteneurisées qui sont à leur tour gérées à partir du système de conteneurs Kubernetes.
Optimiser les charges de travail
L'architecture doit pouvoir s'adapter à un type de charge de travail sans compromis sur un autre. Les langages de programmation, les besoins d'évolutivité et la gestion de la pile logicielle et des systèmes de fichiers sont importants pour comprendre les exigences de la charge de travail. Le tableau ci-dessous présente des exemples de technologies utilisées lors de la création d'une architecture évolutive:
Le dernier composant de conception est l'intégration de Kubernetes et Docker dans l'architecture Kubernetes, un système de conteneurisation open source utilisé pour automatiser le déploiement, la mise à l'échelle et la gestion. Kubernetes vous aide à organiser un cluster de serveurs et à planifier des conteneurs en fonction des ressources disponibles et des besoins en ressources de chaque conteneur. Les conteneurs sont organisés en groupes, l'unité opérationnelle de base de Kubernetes, qui s'adaptent à la taille souhaitée.
Kubernetes aide à gérer le service de découverte, qui comprend l'équilibrage de charge, le suivi de l'allocation des ressources, l'utilisation et les vérifications de l'état des ressources individuelles. Cela permet aux applications de s'auto-réparer en redémarrant ou en copiant automatiquement les conteneurs.
Docker est une plate-forme logicielle qui vous permet de créer, tester et déployer rapidement des produits logiciels. Il conditionne les programmes dans des modules standard appelés conteneurs, qui contiennent tout ce dont vous avez besoin pour exécuter un programme, y compris des bibliothèques, des outils système, du code et des conditions d'exécution. Avec Docker, vous pouvez rapidement déployer et mettre à l'échelle des applications dans n'importe quel environnement et être sûr que votre code s'exécutera.
Blocs d'architecture matérielle
Choisir le bon serveur
Le Dell EMC PowerEdge DSS 8440 est un serveur à 2 sockets (4U) optimisé pour le HPC. Un DSS 8440 peut accueillir 4, 8 ou 10 accélérateurs graphiques NVIDIA V100 pour la reconnaissance d'image ou NVIDIA T4 pour le traitement du langage naturel (NLP). Dix disques NVMe offrent un accès rapide aux données d'entraînement. Ce serveur a à la fois les performances et la flexibilité nécessaires pour être idéal pour l'apprentissage automatique ainsi que pour d'autres charges de travail gourmandes en ressources. Par exemple, la modélisation et l'analyse prédictive dans des environnements d'ingénierie et scientifiques.
Dell EMC PowerEdge C4140répond aux besoins de solutions serveur évolutives nécessaires à la formation des réseaux de neurones. L'apprentissage en profondeur est un processus intensif en calcul, y compris des GPU rapides, en particulier pendant la phase d'apprentissage. Chaque serveur C4140 prend en charge jusqu'à quatre GPU NVIDIA Tesla V100 (Volta). Connectés via l'usine NVIDIA NVLINK 20, huit C4140 ou plus peuvent être mis en cluster pour des modèles plus grands, offrant des performances allant jusqu'à 500 pflops.
Dell EMC PowerEdge R740xdEst un serveur classique à 2 sockets adapté à la plupart des projets d'apprentissage automatique. Ce serveur 2U à usage général a la perspective d'être utilisé pour des tâches d'apprentissage en profondeur, car il prend en charge l'installation d'accélérateurs graphiques et d'un grand nombre de périphériques de stockage.
Choisir le bon réseau
Dell EMC PowerSwitch S5232F-ON: Ethernet hautes performances Dell EMC S5235F-ON Le S5235F-ON possède 32 ports QSFP28 prenant chacun en charge 100 GbE ou 10/25/40/50 GbE à l'aide de câbles séparés. Le bus de commutation a une bande passante de 64 Tbps, offrant des performances élevées avec une faible latence.
Le Mellanox SB7800 est la bonne solution pour de nombreuses charges de travail simultanées. Un bus 72 Tbit / s haute performance et non bloquant avec une latence de 90 ns entre deux points de commutation quelconque offre une solution haute performance.
Services et systèmes de stockage
Choisir le bon service de stockage
Le choix des composants matériels dépend du problème à résoudre et du logiciel utilisé. Plutôt conditionnellement, les sous-systèmes de stockage de données peuvent être divisés en trois types:
- Le service de stockage est intégré au logiciel et en fait partie intégrante. Un exemple est Apache Hadoop avec le système de fichiers HDFS ou la base de données No SQL Apache Cassandra.
- Le service de stockage est fourni soit par des solutions spécialisées (par exemple, Dell EMC PowerScale), soit par des systèmes de stockage d'entreprise.
- Accès aux ressources cloud: à la fois privées Dell EMC ECS, Cloudian, Ceph et publiques - Amazon, Google, MS Azure. L'accès aux données, en règle générale, est effectué sur la base de protocoles REST - Amazon S3, Openstack Swift, etc. Il s'agit de l'un des segments les plus développés du marché du stockage pour le Big Data.
Des approches combinées peuvent être distinguées lorsque des services de stockage intégrés ou des systèmes spécialisés sont utilisés comme couche de stockage opérationnelle et que les systèmes cloud agissent comme un stockage d'archivage à long terme. L'utilisation d'un service de stockage particulier dépend de la tâche à résoudre et des exigences réglementaires (protection contre les catastrophes, intégration avec les fournisseurs d'autorisation et d'audit, utilisabilité).
D'une part, les services de stockage intégrés, s'ils sont disponibles dans le logiciel, sont rapidement déployés et, bien entendu, intégrés autant que possible avec d'autres services applicatifs. En revanche, ils ne répondent pas toujours à toutes les exigences nécessaires. Par exemple, il n'y a pas de réplication complète ou pas d'intégration avec les systèmes de sauvegarde. De plus, nous créons un autre «segment / îlot de données» dédié exclusivement pour une distribution ou un ensemble d'applications.
Exigences de fonctionnalité
Les exigences suivantes peuvent être imposées au service de stockage:
- Évolutivité linéaire en termes de capacité et de performances.
- La capacité de travailler efficacement dans un environnement multi-thread.
- Tolérance aux pannes massives des composants du système.
- Facilité de mise à niveau et d'extension du système.
- Possibilité de créer des niveaux de stockage en ligne et d'archivage.
- Fonctionnalité avancée pour travailler avec les données (audit, outils de DR, protection contre les modifications non autorisées, déduplication, recherche de métadonnées, etc.).
Les performances de stockage sont essentielles pour les projets de calcul haute performance, d'apprentissage automatique et d'intelligence artificielle. C'est pourquoi Dell Technologies propose une large gamme de systèmes de stockage 100% Flash et hybrides pour répondre aux besoins les plus exigeants des clients.
Le portefeuille de stockage de Dell EMC comprend des systèmes de stockage hautes performances PowerScale (HDFS, NFS / SMB) et ECS (S3, Opensatck Swift, HDFS), ainsi que des systèmes de stockage distribués NFS et Luster.
Un exemple de système spécialisé
Dell EMC PowerScale est un exemple de système spécialisé qui vous permet de travailler efficacement dans des projets liés au Big Data. Il vous permet de créer un lac de données d'entreprise. Le système de stockage ne contient pas de contrôleurs et d'étagères de disques, mais est un ensemble de nœuds équivalents connectés à l'aide d'un réseau dupliqué dédié. Chaque nœud contient des disques, des processeurs, de la mémoire et des interfaces réseau pour l'accès client. Toute la capacité de disque du cluster forme un seul pool de stockage et un seul système de fichiers, accessibles via l'un des nœuds.
Dell EMC PowerScaleEst un système de stockage avec accès simultané sur divers protocoles de fichiers. Tous les nœuds forment un seul pool de ressources et un seul système de fichiers. Tous les nœuds sont égaux, n'importe quel nœud peut traiter n'importe quelle demande sans surcharge supplémentaire. Le système s'étend à 252 nœuds. Dans un cluster, nous pouvons utiliser des pools de nœuds avec des performances différentes. Pour le traitement opérationnel, utilisez des nœuds productifs avec SSD / NVMe et un accès réseau efficace de 40 ou 25 GbE, et pour les données d'archive, des nœuds avec des disques SATA volumineux de 8 à 12 téraoctets. De plus, il devient possible de déplacer les données les moins utilisées vers le cloud: à la fois privées et publiques.
Projets et applications
L'utilisation de Dell EMC PowerScale a conduit à un certain nombre de projets de Big Data passionnants . Par exemple, un système d'identification des activités suspectes pour Mastercard. Il résout également avec succès les problèmes liés au contrôle automatique des véhicules (ADAS) de Zenuity. L'un des points importants est la possibilité de séparer le service de stockage en un niveau distinct avec la possibilité de sa mise à l'échelle distincte.
Ainsi, plusieurs plates-formes d'analyse peuvent être connectées à une seule plate-forme de stockage avec un seul ensemble de données. Par exemple, un cluster analytique principal avec une distribution Hadoop spécifique qui s'exécute directement sur les serveurs et une boucle de développement / test virtualisée. Dans le même temps, le cluster entier ne peut pas être alloué pour les tâches d'analyse, mais seulement une certaine partie de celui-ci.
Le deuxième point important est que PowerScale permet d'accéder au système de fichiers. Autrement dit, par rapport aux solutions traditionnelles, il n'y a pas de limitation stricte sur la quantité d'informations analysées. L'architecture en cluster offre d'excellentes performances pour les tâches d'apprentissage automatique, même lors de l'utilisation de grands disques SATA. Une excellente illustration est les problèmes ML / DL où la précision du modèle résultant peut dépendre du volume et de la qualité des données.
Systèmes traditionnels
Dell EMC PowerVault ME4084 (DAS) peut être utilisé comme système de stockage de base. Il est extensible à 3 pétaoctets et est capable d'un débit de 5 500 Mo / s et de 320 000 IOPS.
Schéma typique d'une solution clé en main pour le HPC, l'IA et l'analyse de données
Cas d'utilisation typiques de l'IA par industrie
Sommaire
Les solutions clés en main de Dell Technologies pour le HPC , l' IA et l'analyse de données fournissent une architecture unifiée qui prend en charge plusieurs charges de travail. L'architecture est basée sur quatre composants clés: la disponibilité des données, la planification et la gestion des ressources faciles, l'optimisation de la charge de travail ainsi que l'orchestration et la conteneurisation intégrées. L'architecture prend en charge plusieurs options de serveur, de mise en réseau et de stockage pour répondre au mieux aux besoins HPC.
Ils peuvent être utilisés pour résoudre des problèmes très différents, et nous sommes toujours prêts à aider les clients dans la sélection, le déploiement, la configuration et la maintenance des équipements.
L'auteur du matériel est Alexander Koryakovsky, ingénieur consultant du département des solutions informatiques et réseau de Dell Technologies en Russie.