L’architecture GPU NVIDIA Hopper accélère la programmation dynamique jusqu’à 40 fois avec de nouvelles instructions DPX

Dévoilée aujourd’hui au GTC, l’architecture GPU NVIDIA Hopper accélérera la programmation dynamique – une technique de résolution de problèmes utilisée dans les algorithmes pour la génomique, l’informatique quantique, l’optimisation des itinéraires, etc. – jusqu’à 40 fois avec les nouvelles instructions DPX.

DPX est un jeu d’instructions intégré aux GPU NVIDIA H100 et aide les développeurs à écrire du code pour accélérer les algorithmes de programmation dynamique dans plusieurs secteurs et améliorer les flux de travail pour le diagnostic des maladies, la simulation quantique, l’analyse des graphiques et l’optimisation du routage.

Qu’est-ce que la programmation dynamique ?

Développée dans les années 1950, la programmation dynamique est une technique populaire pour résoudre des problèmes complexes en utilisant deux techniques clés : la récursivité et la mémorisation.

La récursivité décompose un problème en sous-problèmes plus simples, ce qui permet d’économiser du temps et des efforts de calcul. Lors de la mémorisation, les réponses à ces sous-problèmes – qui sont réutilisés plusieurs fois lors de la résolution du problème principal – sont enregistrées. La mémorisation augmente l’efficacité, de sorte que les sous-problèmes n’ont pas besoin d’être recalculés s’ils sont nécessaires plus tard dans le problème principal.

Les instructions DPX accélèrent les algorithmes de programmation dynamique jusqu’à 7 fois plus vite sur un GPU NVIDIA H100 par rapport aux GPU basés sur l’architecture NVIDIA Ampere. Dans un nœud avec quatre GPU NVIDIA H100, cette accélération peut être encore augmentée.

Les cas d’utilisation incluent la santé, la robotique, l’informatique quantique, la science des données

La programmation dynamique est couramment utilisée dans de nombreux algorithmes d’optimisation, de traitement de données et d’omiques. Jusqu’à présent, la plupart des développeurs ont exécuté ces types d’algorithmes sur des processeurs ou des FPGA – mais peuvent débloquer des accélérations spectaculaires avec des instructions DPX sur les GPU NVIDIA Hopper.

omique

L’omique couvre une gamme de domaines biologiques, y compris la génomique (avec un accent sur l’ADN), la protéomique (avec un accent sur les protéines) et la transcriptomique (avec un accent sur l’ARN). Ces domaines, qui influencent le travail critique de la recherche sur les maladies et la découverte de médicaments, reposent tous sur une analyse algorithmique, qui peut être accélérée avec des instructions DPX.

Par exemple, les algorithmes de programmation dynamique Smith-Waterman et Needleman-Wunsch sont utilisés pour l’alignement des séquences d’ADN, la classification des protéines et le repliement des protéines. Les deux utilisent une méthode de notation pour mesurer la correspondance des séquences génétiques de différents échantillons.

Smith-Waterman fournit des résultats très précis mais nécessite plus de ressources informatiques et de temps que les autres méthodes d’alignement. En utilisant les instructions DPX sur un nœud avec quatre GPU NVIDIA H100, les scientifiques peuvent accélérer ce processus de 35x pour un traitement en temps réel, où le travail de récupération de base et de mise en correspondance peut être effectué à la même vitesse que le séquençage de l’ADN.

Cette accélération contribuera à démocratiser l’analyse génomique dans les hôpitaux du monde entier et rapprochera les scientifiques de la fourniture d’une médecine personnalisée aux patients.

optimisation d’itinéraire

Trouver l’itinéraire optimal pour plusieurs pièces mobiles est essentiel pour les robots autonomes se déplaçant dans un entrepôt dynamique, ou même pour un émetteur transmettant des données à plusieurs récepteurs sur un réseau informatique.

Pour résoudre ce problème d’optimisation, les développeurs s’appuient sur Floyd-Warshall, un algorithme de programmation dynamique utilisé pour trouver les distances les plus courtes entre toutes les paires de cibles sur une carte ou un graphique. Dans un serveur avec quatre GPU NVIDIA H100, l’accélération Floyd Warshall est multipliée par 40 par rapport à un serveur traditionnel à processeur double socket uniquement.

Combinée au logiciel logistique NVIDIA cuOpt AI, cette accélération d’optimisation de routage pourrait être utilisée pour des applications en temps réel dans des usines, des véhicules autonomes ou des algorithmes de cartographie et de routage dans des graphes abstraits.

simulation quantique

D’innombrables autres algorithmes de programmation dynamique pourraient être accélérés sur les GPU NVIDIA H100 avec des instructions DPX. Un domaine prometteur est l’informatique quantique, qui utilise la programmation dynamique dans des algorithmes d’optimisation de tenseur pour la simulation quantique. Les instructions DPX pourraient aider les développeurs à accélérer le processus d’identification du bon ordre de contraction du tenseur.

Optimisation des requêtes SQL

Une autre application potentielle est la science des données. Les data scientists travaillant avec le langage de programmation SQL doivent souvent effectuer plusieurs opérations de “jointure” sur un ensemble de tables. La programmation dynamique aide à trouver un ordre optimal pour ces jointures, économisant souvent des ordres de grandeur en temps d’exécution et accélérant ainsi les requêtes SQL.

En savoir plus sur l’architecture GPU NVIDIA Hopper. Inscrivez-vous gratuitement à GTC, qui fonctionne en ligne jusqu’au 24 mars. Et regardez la rediffusion du discours d’ouverture du fondateur et PDG de NVIDIA, Jensen Huang.

Leave a Comment