Présentation
Le calcul haute performance désigne généralement le traitement de calculs complexes à grande vitesse sur plusieurs serveurs en parallèle. Ces groupes de serveurs sont appelés « clusters » et sont composés de centaines, voire de milliers de serveurs de calcul reliés sur un réseau. Dans un cluster de calcul haute performance, on appelle chaque ordinateur individuel un nœud.
Les clusters de calcul haute performance exécutent des lots de calculs. Au cœur de ces clusters se trouve un ordonnanceur. Celui-ci garde la trace des ressources disponibles, ce qui permet une allocation efficace des diverses ressources de calcul (CPU et GPU) en fonction des tâches via un réseau rapide.
En général, une solution de calcul haute performance repose sur trois composants principaux :
- le calcul ;
- Réseau
- Stockage
Il est possible de déployer les solutions de calcul haute performance sur site, en périphérie du réseau ou même dans le cloud.
Transformer l'entreprise grâce au calcul haute performance
Superordinateurs
Un superordinateur est composé de milliers de nœuds de calcul qui travaillent ensemble pour accomplir des tâches.
Si, à l'origine, les « superordinateurs » étaient des machines individuelles ultra rapides, aujourd'hui les ordinateurs haute performance sont construits à l'aide d'énormes clusters de serveurs dotés d'un ou de plusieurs processeurs.
Les superordinateurs modernes cumulent de la puissance de calcul pour offrir des performances nettement supérieures à celles des ordinateurs de bureau ou des serveurs individuels. Ils sont notamment utilisés pour résoudre des problèmes complexes dans les domaines de l'ingénierie, des sciences et des affaires.
En tirant parti de la puissance de calcul supplémentaire fournie par les clusters de calcul haute performance, il est possible de traiter les problèmes à gros volumes de données à l'aide d'ensembles de données plus importants, dans le même laps de temps. Ainsi, les problèmes peuvent être décrits et examinés plus précisément, à plus grande échelle ou avec plus d'éléments.
Les solutions de calcul haute performance s'exécutent sur un système d'exploitation. D'après la liste TOP500 qui classe les systèmes informatiques les plus puissants du monde, Linux®est le système d'exploitation le plus utilisé pour le calcul haute performance. L'ensemble des superordinateurs du TOP500 exécutent Linux, et parmi les dix premiers, la plupart exécutent Red Hat® Enterprise Linux.
Cas d'utilisation du calcul haute performance
Plus l'utilisation des technologies telles que l'Internet des objets, l'intelligence artificielle (IA) et l'apprentissage automatique (AA) augmente, plus le volume des données que produisent les entreprises augmente. Et ces données doivent être traitées et utilisées toujours plus rapidement, idéalement en temps réel.
Aujourd'hui, le calcul haute performance est exploité partout, du cloud à la périphérie du réseau. Il est utilisé dans des secteurs tels que les sciences, les soins de santé et l'ingénierie, car il permet de résoudre des problèmes de calcul à grande échelle dans un délai raisonnable, à un coût raisonnable.
Pour alimenter des algorithmes de plus en plus sophistiqués est apparue l'analyse de données haute performance, qui applique les ressources du calcul haute performance au Big Data. En outre, les superordinateurs prennent en charge l'apprentissage profond et les réseaux neuronaux qui font progresser l'intelligence artificielle.
Le calcul haute performance s'utilise également dans d'autres secteurs et cas d'utilisation, notamment la recherche gouvernementale et universitaire, les graphiques hautes performances, les biosciences, la génomique, la fabrication, les services financiers et bancaires, les sciences de la Terre et les médias.
Le calcul haute performance dans le cloud
Les ressources de calcul nécessaires à l'analyse des gros volumes de données et à la résolution de problèmes complexes dépassent celles disponibles dans les clusters de calcul du datacenter sur site, généralement associés au calcul haute performance, et s'étendent aux ressources disponibles dans les services de cloud public.
L'adoption du cloud pour le calcul haute performance est essentielle pour passer d'une approche d'exécution des charges de travail exclusivement sur site à une approche dissociée de toute infrastructure ou de tout emplacement.
Dans le cloud, les ressources sont disponibles à la demande. Il s'agit d'une configuration économique qui offre une plus grande souplesse pour l'exécution des charges de travail de calcul haute performance.
L'adoption des technologies de conteneurs est également en plein essor. Légers, flexibles et abordables, les conteneurs améliorent les performances tout en réduisant les coûts. Ils permettent également de répondre aux exigences de nombreuses applications de calcul haute performance, telles que l'évolutivité, la fiabilité, l'automatisation et la sécurité.
Les conteneurs présentent plusieurs caractéristiques qui les rendent particulièrement utiles dans les environnements de calcul haute performance. Ils peuvent contenir à la fois le code d'une application, ses dépendances et les données de l'utilisateur et migrer ensuite le tout dans le cloud public ou hybride, un avantage majeur pour le partage des recherches et des résultats scientifiques au sein d'une communauté mondiale répartie sur plusieurs sites.
L'utilisation de conteneurs pour déployer des applications et des charges de travail de calcul haute performance dans le cloud permet d'éviter toute dépendance à un système ou à un fournisseur de cloud spécifiques.
Le calcul haute performance avec Red Hat
Red Hat Enterprise Linux fournit une plateforme qui assure la fiabilité et l'efficacité des charges de travail de calcul haute performance à grande échelle pour les environnements sur site, dans le cloud ou hybrides. Ce système d'exploitation donne accès à toute une gamme d'outils de conteneurisation, améliorant ainsi la portabilité et la reproductibilité des charges de travail.
Red Hat OpenShift est une plateforme d'orchestration de conteneurs pour les entreprises qui permet d'étendre les fonctionnalités de Kubernetes. Elle assure la cohérence de l'exploitation et la gestion du cycle de vie des applications à grande échelle à l'aide d'options de topologie flexibles compatibles avec les charges de travail à faible latence dans tout type d'environnement.