NVIDIA ouvre CUDA au monde

14:40 - mercredi 14 décembre 2011 par Pierre Dandumont

Cliquer ici pour agrandir

NVIDIA vient d’annoncer que son compilateur CUDA était maintenant disponible en open source. Le compilateur en question est basé sur LLVM (Low Level Virtual Machine), un programme qui est en fait une infrastructure pour un compilateur, qui gère toute la chaîne de compilation.

LLVM, utilisé notamment par Apple dans Mac OS X et iOS, est en effet très flexible en entrée — il suffit d’écrire un programme qui va comprendre le langage utilisé — et en sortie, avec la possibilité de sortir un code utilisable par exemple sur plusieurs architectures. Un des avantages est une bonne gestion du matériel : si le code utilise par exemple des fonctions qui ne sont pas disponibles sur le matériel, LLVM peut adapter le programme pour n’utiliser qu’une émulation logicielle, par exemple.

Actuellement, le compilateur LLVM de NVIDIA accepte en entrée du C et du C++ pour CUDA ainsi que du Fortran pour CUDA. En sortie, il peut générer du code x86 ou du code GPGPU, qui va s’exécuter sur une carte graphique compatible CUDA.

L’intérêt de l’ouverture est évident pour NVIDIA : il va être possible d’utiliser d’autres langages en entrée, mais aussi de prendre en charge d’autres architectures en sortie, par exemple le jeu d’instructions des processeurs ARM.

source