SDK CUDA 4.0
jeu, 03/03/2011 - 13:55
NVIDIA mettra a disposition demain la mouture 4.0 de son Toolkit CUDA. CUDE permetet de décharger les CPU d'une machine en faisant effectuer des calculs parallèle massifs sur la GPU de l'ordinateur. Les bases de la programmation CUDA ont été présentée dans Programmez! 117 et 118.
Pour cette version, l'éditeur met en avant offre trois nouveautés majeures :
- La technologie NVIDIA GPUDirect™ 2.0 – Support aux communications peer‐to‐peer entre les GPU dans un seul serveur ou poste de travail, ce qui simplifie et rend plus rapide la programmation multi‐GPU tout en améliorant la performance des applications.
- Adressage Unifié Virtuel (UVA) ‐ Espace d'adressage mémoire unique pour la mémoire système principale et les mémoires GPU, pour rendre plus efficace et plus facile la programmation parallèle.
- Thrust, des bibliothèques primitives de modèles C++ à hautes performances ‐ Compilation de puissants algorithmes parallèles C++ en open source et de structures de données qui facilitent la programmation pour les développeurs C++. Avec Thrust, le tri parallèle est de 5 à 100 fois plus rapide, d'après NVIDIA, qu'avec Standard Template Library (STL) et Threading Building Blocks (TBB).
La version 4.0 de l’architecture CUDA Toolkit intègre d’autres fonctionnalités intéressantes, notamment:
- Intégration MPI avec les applications CUDA – Les modifications des implémentations MPI comme OpenMPI permettent de transférer automatiquement les données depuis et à destination de la mémoire GPU à travers Infiniband lorsqu'une application effectue ou reçoit un appel MPI.
- Partage des GPU pour le multithread ‐ Plusieurs threads de CPU hôte peuvent partager des contextes sur un seul GPU, ce qui permet de partager plus facilement un seul GPU entre les applications multithreadées.
- Partage multi‐GPU par un unique thread de CPU ‐ Un thread d’un seul CPU hôte peut accéder à tous les GPU du système. Les développeurs peuvent ainsi facilement coordonner les travaux sur plusieurs GPU pour des tâches telles que des échanges « halo » dans des applications.
- Nouvelle bibliothèque Image et Visualisation NPP ‐ Un ensemble riche d'opérations de transformation d'images permettent le développement rapide d'applications d'imagerie et de visualisation sur ordinateur.
- Support des fonctionnalités C++ telles que new/delete et fonctions virtuelles
- Nouveau désassembleur binaire pour GPU
Une Release Candidate du SDK CUDA 4.0 sera disponilbe gratuitement demain en s'inscrivant au CUDA Registered Developer Program : www.nvidia.com/paralleldeveloper