Le HPC accélère la visualisation de données
By   |  January 28, 2016

Bienvenue dans le nouveau paradigme pour le calcul scientifique

Les instituts de recherche et certains secteurs de l’industrie ont beau manipuler des quantités gigantesques de données à longueur d’année, ces dernières ne deviennent pertinentes que si elles conjuguent analyse et technologies de visualisation avancées. Et l’avenir est l’affichage à distance, avec de nombreux défis techniques à relever. A la clé, des résultats époustouflants de réalisme.

Imaginez un instant que vous faites une pause et en profitez pour prendre un café. Tout en le sirotant tranquillement, une idée de modélisation du projet sur lequel vous travaillez vous vient à l’esprit. Pour en vérifier la faisabilité, vous avez besoin de visualiser les données dudit projet. Mais l’ensemble de données concernés est énorme. Cela pourrait prendre deux jours pour télécharger sur Internet, même avec une connexion internet à haut débit (généralement pas disponible dans les cafétérias !), Et vous ne disposez que d’un ordinateur portable sur lequel faire le traitement. Et de toutes manières, impossible d’accéder aux données de votre entreprise ers d’une connexion Internet publique non sécurisée. Au lieu de cela, vous pouvez utiliser votre smartphone pour vous connecter à distance aux serveurs où sont stockées les données, et où vous pouvez exécuter l’application et visualiser les résultats sans avoir à déplacer vos données. A l’heure actuelle, un smartphone permet d’obtenir une bande passante de 5 Mo/s. Et cela suffit !

Bienvenue dans le nouveau paradigme pour le calcul scientifique
La visualisation à distance est à l’intersection du Cloud, du Big Data et de l’informatique haute performance. Et la possibilité de visualiser des ensembles de données complexes en s’y connectant avec un Smartphone n’est plus une vue de l’esprit. Tom Coull, président et PDG de Penguin Computing, a souligné que son entreprise avait démontré un tel processus en Novembre de l’année dernière. De l’avis de Steve Parker, vice-président des activités graphiques professionnelles de NVIDIA, la demande pour la visualisation à distance ne peut qu’augmenter : « Je suis convaincu que les ensembles de données vont continuer à croître plus vite que la bande passante sur Internet. Le problème va juste empirer ».

Intel croit également que c’est la tendance dominante. Jim Jeffers, ingénieur principal et directeur du département ingénierie de visualisation parallèle chez Intel, affirme « Comme les ensembles de données deviennent plus importants, la visualisation prend un rôle de plus en plus important pour aider à analyser ces grands ensembles de données. Ce qui soulève la question de l’analyse à distance sans déplacer les données. » Jeffers voit un second développement, la demande vient de la communauté des utilisateurs de scientifiques et d’ingénieurs : « L’autre tendance est que les nuances dans les données, et la façon d’extraire des informations visuelles à partir des données, exige une plus grande fidélité. »

Andrea Rodolico, CTO de la société italienne de logiciels Nice, estime que les conséquences de tout cela seront importantes. « Aujourd’hui, la visualisation à distance est un concept relativement nouveau. Mais dans cinq ans, la vraie question qui va se poser est « pourquoi ne puis-je pas utiliser cette méthode pour l’ensemble de mes charges de travail techniques ? ». Les données vont continuer à croître et la capacité de se déplacer de plus en plus complexe ; la collaboration sera importante et la sécurité sera un aspect fondamental afin de rester dans un environnement bien défini et bien contrôlé. Il peut du reste s’agir d’un datacenter comme d’un Cloud public -. La vision à cinq ans est « Pourquoi devrais-je me déplacer alors que je peux avoir recours à la visualisation à distance pour mes activités techniques ? ».

Eviter de déplacer les données
Les domaines où Penguin a vu l’adoption la plus rapide du mode de visualisation à distance, indique Coull, sont dans l’ingénierie et la fabrication, l’aérospatiale, l’automobile et les équipements lourds. Si elles ont une application où le solveur a besoin d’un cluster, « Ils utilisent leur solveur sur notre Cloud, ou s’exécutent le modeleur en utilisant la capacité de visualisation à distance sans avoir à déplacer les données qui font l’objet du calcul. Les données sont là et la demande est là. Et cela évite de se déplacer et d’avoir à payer pour le transport des données, coûteux en temps et en argent. »

Ce même point est souligné par Andrea Rodolico : « Il y a près de 10 ans que nous avons pensé que l’accès aux données ne doit pas obliger à les transférer. Notre proposition consiste à vous laisser toute latitude pour vos activités HPC et de bénéficier de l’interactivité de notre portail. Les progrès portent autant sur l’optimisation de la bande passante que sur la réduction de la latence. La solution de Penguin, Scyld Couverture Workstation, est accessible depuis le cloud public Penguin, à partir d’un poste sous Linux ou Windows.

Surmonter les contraintes
Bien que la visualisation au travers d’un simple Smartphone soit un exemple extrême, il illustre parfaitement les contraintes qui doivent être surmontées en matière d’infrastructure sur laquelle les scientifiques et les ingénieurs peuvent exécuter leurs applications pour obtenir un aperçu via la visualisation à distance. La bande passante est le premier critère. Coull indique que la première génération nécessitait une bande passante de 20 à 30 Mo/s pour avoir un affichage fidèle et une fréquence de rafraîchissement satisfaisante.

Le second aspect porte sur la sécurité : “De nombreuses organisations et entreprises ne veulent pas que vous perciez des trous virtuels supplémentaires à travers leur pare-feu en ouvrant les ports non standards. Il est difficile d’obtenir des DSI de modifier leurs règles de pare-feu juste pour la visualisation à distance. Donc, nous voulions avoir quelque chose qui fonctionne sur les ports https standard ».

La troisième contrainte pour Penguin était d’être capable d’arriver à ce résultat sans avoir à installer un client dédié. Coull déclare à cet effet que « l’installation d’un client peut violer les règles au sein d’une entreprise. Les directions informatiques ne veulent pas d’un logiciel tiers derrière leur pare-feu qui est connecté à Internet. Les navigateurs ne souffrent pas de cette suspicion. Les DSI font plutôt confiance à Chrome, Internet Explorer, Firefox et Safari. Donc, nous devions pouvoir fonctionner entièrement et nous connecter aux serveurs dans le Cloud au sein d’un navigateur en utilisant uniquement JavaScript. »

Le recours aux processeurs graphiques
Le système Penguin est construit sur la technologie NVIDIA GRID et, selon Coull, affiche un contenu à une résolution d’écran de 1400 par 900 pixels avec une qualité de diffusion suffisante en utilisant le protocole H.264 à 25 à 30 images par seconde, avec une très haute qualité d’image. Steve Parker a également souligné le rôle central de la technologie GRID de Nvidia, disant qu’en son cœur résident des technologies clé pour le streaming vidéo diffusé à travers Internet. « Nous disposons d’un moteur d’encodage matériel sur le GPU qui permet de compresser et de numériser l’image à faible latence – dans de nombreux cas inférieurs à un écran connecté. Ce flux est transmis sur un lien sécurisé à un écran distant. Cela nous permet de placer un serveur de réseau dans une machine quelque part avec une connexion à une base de données HPC et de transmettre le flux vidéo sur Internet – ce qui requiert une quantité de données nettement plus réduite ».

La virtualisation dans le cadre de la visualisation
Rodolico se veut agnostique et déclare travailler aussi bien avec SGI, Dell, HP ou Lenovo, mais il a souligné l’importance du GPU pour des performances de visualisation 3D : « Ce qui importe pour nous est d’avoir le bon GPU pour chaque utilisation. Nos solutions s’appuient sur les GPU Nvidia de type Quadro et GRID, car ils sont un acteur dominant dans les datacenter, en particulier sur Windows. Nous sommes très enthousiastes au sujet de leurs cartes GRID, car elles autorisent également la virtualisation vGPU que nos clients recherchent ».

Rodolico souligne toutefois l’annonce par VMware d’offrir la virtualisation des vGPU Nvidia, ce qui permet de partager un GPU entre plusieurs machines virtuelles. « Ils sont leader en matière de virtualisation d’entreprise. Un grand nombre de nos clients nous demandent de tirer parti de l’infrastructure VMware pour la technologie de visualisation et jusqu’ici nous avons été limités par le manque de soutien pour vGPU dans leur offre. La demande va commencer à augmenter cette année, mais l’accélération du marché est vraisemblablement pour l’année prochaine ».

Entre Linux et Windows, il n’y a pas de débat. Selon Coull « Vous devez avoir les deux. Il y a un coût plus élevé sur Windows compte tenu des licences, qui n’existe pas sur Linux. Mais les entreprises qui utilisent des postes de travail sont majoritairement sous Windows ». Le surcoût pour couvrir les deux environnements est relativement négligeable, environ un mois est nécessaire pour porter le code d’une plateforme à l’autre.

Pour Andrea Rodolico, l’accès open source pour la visualisation à distance tend à être basé sur Linux et est davantage utilisé dans la recherche universitaire. Comme avec Penguin, les utilisateurs commerciaux – notamment dans la construction automobile – ont tendance à opter pour un mélange de Linux et Windows. « Nous voyons l’open source comme un excellent moyen pour les utilisateurs de commencer à se familiariser avec le concept de visualisation 3D à distance. Puis, quand ils ont besoin de davantage de support ou d’ajouter des applications Windows, ils peuvent obtenir l’installation de composants open source équivalents, en y ajoutant une assistance commerciale ». Comme exemple de l’appui fourni par une entreprise comme Nice, Rodolico souligne les liens étroits que son entreprise entretient avec les fournisseurs de logiciels applicatifs de sorte que « dans notre laboratoire, nous avons des dizaines d’applications certifiées que nous testons et dont nous nous assurons du fonctionnement lors de toute nouvelle version ».

Calculer et visualiser avec la même machine
Pour les applications Linux, Nice est capable de calculer et d’afficher des visuels 3D en utilisant la carte de Nvidia Tesla plutôt que les autres cartes graphiques. Rodolico souligne que les capacités de cette carte « sont particulièrement importantes pour la communauté HPC. La même carte permet de calculer, de visualiser et d’afficher à distance à partir de la même station de travail. « Avec la capacité de tout mettre dans le datacenter vous avez la possibilité de donner à chaque utilisateur la machine dimensionnée par rapport à leurs besoins réels, indépendamment de leur environnement de travail qui est stocké à distance sur une machine virtuelle ».

Ces possibilités nouvelles sont sans précédent, et l’avantage d’une ressource unifiée est de pouvoir être mise en place de nombreuses façons intéressantes. Il confère à un administrateur informatique ou même à l’utilisateur final, chercheur ou ingénieur de son état une souplesse inégalée car ils peuvent allouer dynamiquement un ensemble de nœuds en fonction des besoins plutôt que de devoir dédier ces ressources de façon semi-permanente au seul calcul. « L’unification des fonctions de calcul et de visualisation sont une tendance forte » souligne ion de grandes breaks de bandes, est également va être la clé. Ce sera le moyen par défaut à travailler. ”

Visualisation et graphiques sans GPU ?
Mais pour Intel, une considération importante est qu’un nombre important de grands centres de calcul haute performance ne sont pas équipés de GPU. Comme l’explique Jeffers : « Les utilisateurs de telles solutions voient bien la nécessité d’un GPU pour la visualisation, mais cela les oblige à déplacer les données puis à exécuter un logiciel de visualisation OpenGL, obligeant à plusieurs transferts de données au fur et à mesure que le modèle s’affine. A mon avis cela implique des retards de plusieurs jours voire semaines avant que les scientifiques puissent obtenir la visualisation de leurs modèles ou données avec la précision voulue »

Depuis quelque temps, Intel a a jouté des capacités de calcul parallèles pour ses produits et, selon Jim Jeffers « Ce parallélisme ajoute des capacités à de nombreux types de charges de travail y compris graphiques ». Intel a donc développé des outils en open source pour donner à ces installations des capacités de visualisation sans pour autant nécessiter de GPU dédié. « Un GPU a une quantité limitée de mémoire, mais si vous appliquez ces techniques sur un cluster HPC standard qui a davantage de mémoire pour les applications de calcul, vous n’êtes pas limité dans la façon dont vous modelez votre ensemble de données. Ainsi, au lieu d’être limité par l’enveloppe technique du GPU, vous pouvez exploiter les ressources bien supérieures qu’offre un cluster de calcul » estime Jeffers.

« Nous développons des solutions de visualisation CPU avec des partenaires industriels tels que le TACC (Texas Advanced Computing Center) et Kitware, un spécialiste de la visualisation de données qui a développé une API capable d’exploiter les processeurs Xeon et Xeon Phi d’Intel répartis sur plusieurs datacenter sans nécessiter de GPU, capable de visualiser des données à distance en temps réel à des fréquences raisonnables comprises entre 10 et 20 images par seconde ». De l’avis de Jeffers, « TACC a l’une des meilleures équipes de visualisation du monde. Ils sont un partenaire idéal avec qui nous travaillons ».

La plupart des dispositifs matériels de visualisation à l’heure actuelle tirent parti des capacités graphiques de GPU, et des produits Nvidia en particulier. Leur conception hautement parallèle les rend plus efficaces que les processeurs à usage général pour les algorithmes qui traitent de grands blocs de données en parallèle. Sur le plan logiciel, la plupart des systèmes de visualisation sont développés sur OpenGL, qui a été la norme de l’industrie depuis plus de deux décennies.

Rastérisation ou ray tracing ?
Selon Steve Parker de Nvidia, OpenGL a tout de même évolué en vingt ans. « OpenGL est devenue une API graphique très sophistiquée, et l’activité principale de Nvidia s’appuie sur OpenGL. Presque toutes les applications intensives sont OpenGL, et cela va de Maya (le logiciel d’animation 3D d’Autodesk) aux applicatifs de CAO et à la visualisation scientifique. Si vous construisez un mur d’affichage, la solution la plus efficace est de l’animer sur une base de cartes Quadro parce que nous avons fait en sorte que ces cartes soient capables des meilleurs rendus. Un nombre croissant de jeux font également usage de OpenGL et notre gamme de produits GeForce est également basé sur la même technologie. Toutes ces cartes ont pour principe de fonctionnement la rastérisation. Nous pouvons pixelliser environ trois milliards de triangles par seconde, ce qui est aussi profitable et efficace sur de grands ensembles de données ».

Pour Jeffers, l’axe de développement d’Intel offre un avantage supplémentaire, dans la mesure où il ouvre la voie au ray tracing comme une alternative à la rastérisation OpenGL. Le ray tracing est, estime-t-il, une méthode de visualisation scientifique qui assure une fidélité plus importante correspondant à des demandes croissantes. Comme toujours, les très grands ensembles de données que manient l’industrie du pétrole et du gaz occupent une place importante. Selon Jeffers « Ils ont déjà recours au ray tracing en raison de l’amélioration de la fidélité et des avantages d’analyse et de visualisation qu’il offre. Mon équipe a développé un algorithme de ray tracing particulièrement performant plus rapide sur des processeurs standard ».

La mémoire disponible pour les CPU est généralement plus grande que celle disponible pour les GPU et donc pour les petits ensembles de données (à savoir les données qui correspond dans la mémoire du GPU), la pixellisation un GPU moderne surpassera fréquemment un CPU sur un tel calcul. Cependant, selon Intel, sur de très grands ensembles de données, la performance d’un cluster de CPU et d’une grande quantité de mémoire peut faire la différence sur un tel calcul.

Steve Parker évoque la collaboration entre Nvidia et John Stone de l’Université de l’Illinois à Urbana Champaign sur un système de ray tracing open source appelé VMD. « Il exploite une application de visualisation moléculaire et a adopté pour cela une bibliothèque que Nvidia a appelé OptiX, et qui exploite le GPU pour calculer des visualisations en ray tracing. Nous travaillons avec lui sur la possibilité de diffuser à distance une application OptiX. Ce qui permettra d’exécuter VMD sur un poste de travail distant et de transmettre les données à une Appliance Visual Computing Appliance (VCA) de Nvidia et, en utilisant la même technologie sous-jacente de streaming vidéo et de faible latence des données, capable d’interagir avec des images calculées en ray tracing ». Ce processus a été démontré avec une application s’exécutant à la Nouvelle Orléans et le cluster de calcul situé en Californie.

© HPC Today 2019 - All rights reserved.

Thank you for reading HPC Today.

Express poll

Do you use multi-screen
visualization technologies?

Industry news

Brands / Products index