99 votes

Est-il possible d'exécuter CUDA sur des GPU AMD ?

J'aimerais étendre mes compétences au calcul par le GPU. Je suis familier avec le raytracing et les graphiques en temps réel (OpenGL), mais la prochaine génération de graphiques et de calcul haute performance semble se situer dans le calcul par le GPU ou quelque chose de similaire.

J'utilise actuellement une carte graphique AMD HD 7870 sur mon ordinateur personnel. Pourrais-je écrire du code CUDA pour cette carte ? (mon intuition me dit que non, mais comme Nvidia a publié les binaires du compilateur, je peux me tromper).

Une deuxième question plus générale est la suivante : par où commencer avec le calcul par le GPU ? Je suis certain que c'est une question souvent posée, mais la meilleure que j'ai vue date de 2008 et je pense que le domaine a beaucoup évolué depuis.

1voto

Ce sont les détails de base que j'ai pu trouver.

Linux

ROCm prend en charge les principaux frameworks ML tels que TensorFlow et PyTorch, avec un développement continu pour améliorer et optimiser l'accélération des charges de travail.

Il semble que le support soit uniquement pour les systèmes Linux.( https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html )

ROCm soutient les principaux frameworks ML comme TensorFlow et PyTorch, avec un développement continu pour améliorer et optimiser l'accélération des charges de travail. basé sur HIP

Heterogeneous-Computing Interface for Portability (HIP) est un dialecte C++ conçu pour faciliter la conversion des applications CUDA en code C++ portable. Il fournit une API de style C et un langage de noyau C++. L'interface C++ peut utiliser des modèles et des classes au-delà de la frontière hôte/noyau. L'outil HIPify automatise une grande partie du travail de conversion en effectuant une transformation source à source de CUDA à HIP. Le code HIP peut s'exécuter sur du matériel AMD (via le compilateur HCC) ou NVIDIA (via le compilateur NVCC) sans perte de performance par rapport au code CUDA original.

Le port ROCm de Tensorflow est https://github.com/ROCmSoftwarePlatform/tensorflow-upstream et leur Docker est https://hub.docker.com/r/rocm/tensorflow

Mac

Ce site support pour macOS 12.0+( comme ils l'affirment)

Tests effectués par Apple en octobre et novembre 2020 sur un système Mac Pro de série à 3,2 GHz et 16 cœurs, basé sur Intel Xeon W, avec 32 Go de RAM, une carte graphique AMD Radeon Pro Vega II Duo avec 64 Go de HBM2 et un SSD de 256 Go.

Vous pouvez maintenant tirer parti de tensorflow-metal d'Apple. PluggableDevice dans TensorFlow v2.5 pour un entraînement accéléré sur les GPU Mac directement avec Metal.

-2voto

Martin Vahi Points 59

En 2019_10_10, je ne l'ai PAS testé, mais il existe le projet "GPU Ocelot".

http://gpuocelot.gatech.edu/

qui, selon sa publicité, tente de compiler du code CUDA pour une variété de cibles, y compris les GPU AMD.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X