Les chercheurs permettent la prise en charge des applications Nvidia CUDA sur les GPGPU RISC-V
C'est en 2007 que Nvidia a introduit pour la première fois la prise en charge de CUDA (Compute Unified Device Architecture) pour ses GPU, permettant ainsi aux cartes graphiques de fonctionner comme un puissant CPU ou GPU universel (GPGPU) et d'exécuter des instructions de calcul. Depuis lors, Nvidia a commencé à ajouter des petits cœurs compatibles CUDA à tous ses GPU, et CUDA a évolué en une plateforme/API de calcul parallèle complexe qui peut alimenter les superordinateurs les plus rapides superordinateurs les plus rapides du monde. Il s'agit d'une solution propriétaire, qui ne fonctionne donc pas avec les produits de la gamme AMD ou Intel GPU. Cependant, cela n'a pas empêché les chercheurs d'essayer de porter la plate-forme sur un GPGPU basé sur RISC-V, et il semble que CUDA puisse être adapté pour fonctionner sur du matériel non propriétaire après tout.
RISC-V est apparu comme l'une des meilleures alternatives aux solutions ARM depuis que Nvidia a lancé l'opération d'acquisition d'ARM. En tant que première architecture de jeu d'instructions à source ouverte et sans licence, RISC-V peut même être programmé pour fonctionner comme une alternative à l'architecture x86 sur les pC de bureau/portableset Intel prévoit déjà une collaboration RISC-V pour les futurs processeurs de mobilité. Des chercheurs des États-Unis et de Corée du Sud ont récemment utilisé la syntaxe facile à comprendre et la personnalisation étendue de l'ISA RISC-V pour permettre la prise en charge de CUDA dans un projet GPGPU appelé Vortex. Le matériel RISC-V utilisé dans ce cas repose sur l'ISA RV32IMF, qui permet aux cœurs 32 bits de passer de 1 à 32 cœurs dans les conceptions de GPU. Vortex prend déjà en charge OpenCL 1.2, tout comme les GPGPU d'AMD GPGPU d'AMDd'AMD, mais les chercheurs ont voulu prouver qu'il pouvait également prendre en charge CUDA dans une certaine mesure.
Afin d'exécuter du code optimisé pour CUDA, les chercheurs le reformulent dans le format de représentation intermédiaire (IR) NVVM, basé sur l'IR LLVM open-source. Ce format est à son tour converti en IR portable standard (SPIR-V), qui est ensuite traduit par l'implémentation POCL (portable OpenCL) qui inclut la bibliothèque RISC-V. Vortex exécute finalement le code optimisé pour CUDA sous forme d'instructions OpenCL.
Vortex prend actuellement en charge la plupart des applications CUDA, mais les chercheurs précisent qu'il existe quelques applications utilisant la mémoire de texture ou les fonctions mathématiques, qui ne sont pas encore prises en charge. La vitesse de réalisation de la traduction de CUDA en OpenCL n'est pas encore claire.
Achetez le SiFive HiFive1 Rev B RISC-V SoC et la carte de développement sur Amazon
Top 10
» Le Top 10 des PC portables multimédia
» Le Top 10 des PC portables de jeu
» Le Top 10 des PC portables de jeu légers
» Le Top 10 des ordinateurs portables bureautiques
» Le Top 10 des PC portables bureautiques premium/professionnels
» Le Top 10 des Stations de travail mobiles
» Le Top 10 des Ultraportables
» Le Top 10 des Ultrabooks
» Le Top 10 des Convertibles
» Le Top 10 des Tablettes
» Le Top 10 des Tablettes Windows
» Le Top 10 des Smartphones
» Le Top 10 des PC Portables á moins de 300 euros
» Le Top 10 des PC Portables á moins de 500 euros
» Le Top 25 des meilleurs écrans d'ordinateurs