Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
atelier:chantier:opencl-avec-amd [28/09/2020 19:59] Debian Alain [Préambule] |
atelier:chantier:opencl-avec-amd [18/12/2021 01:13] Debian Alain [Préambule] |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : installer openCL sur debian carte AMD | * Objet : installer openCL sur debian carte AMD | ||
- | * Niveau requis : débutant avisé | + | * Niveau requis : <del>débutant</del> avisé |
- | * Commentaires : //openCL pour carte AMD Radeon RX 5xx et BLENDER 2.82a sur DEBIAN TESTING BULLSEYE // | + | * Commentaires : //openCL pour carte AMD Radeon RX 5xx / RX 6xxx et BLENDER 2.82a /2.93.4 sur DEBIAN TESTING BULLSEYE / DEBIAN BOOKWORM-SID // |
- | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser NU/Linux en ligne de commande, tout commence là !.]] :-) | + | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) |
* Suivi : {{tag>en-chantier à-tester à-placer}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:atelier:#tags|l'Atelier]]. | * Suivi : {{tag>en-chantier à-tester à-placer}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:atelier:#tags|l'Atelier]]. | ||
* Création par [[user>Debian Alain]] 11/04/2020 | * Création par [[user>Debian Alain]] 11/04/2020 | ||
* co créé par Plop6 (irc) un grand merci pour ton soutien technique ! :) | * co créé par Plop6 (irc) un grand merci pour ton soutien technique ! :) | ||
* Testé par <...> le <...> FIXME | * Testé par <...> le <...> FIXME | ||
- | * Commentaires sur le forum : [[:url-invalide | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME | + | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=347164#p347164| Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) |
**Nota :** | **Nota :** | ||
Ligne 16: | Ligne 16: | ||
===== Introduction ===== | ===== Introduction ===== | ||
- | ce petit tuto reprend les étapes d'installation du pilote openCL sur carte AMD (RX 550 4GB et RX 570 ITX 8GB) | ||
- | |||
- | le tout , fait sur linux debian testing bullseye , | ||
- | X.org GNOME 3.34.2 et 3.36.2 , blender 2.82a | + | Ce petit tuto reprend les étapes d'installation du pilote openCL sur ces matériels et système : |
+ | * carte AMD RX 550 4GB | ||
+ | * carte AMD RX 570 8GB ITX | ||
+ | * carte AMD RX 6800 16GB | ||
+ | le tout , fait sur linux [[doc:systeme:apt:sources.list:testing|debian testing bullseye]] / debian bookworm sid et avec | ||
+ | * X.org GNOME 3.34.2 , 3.36.2 , 40.4 et 41.1 | ||
+ | * Blender 2.82a , 2.93.4 et 2.93.5 | ||
+ | * Darktable 3.6.1-1 | ||
+ | * processeur AMD RYZEN 7 1700 X et AMD RYZEN 9 3900 X | ||
- | et processeur AMD RYZEN 7 1700 X | + | Un grand merci à **PLOP6** via ([[doc:reseau:freenode|irc]]) sans qui rien de ce tuto n'aurait été possible. |
- | + | ||
- | un grand merci à PLOP6 (irc) sans qui rien n'aurai été possible . | + | |
===== Historique ===== | ===== Historique ===== | ||
- | openCL , à l'origine , a été créé pour uniformiser les programmes de calcul "massivement" parallèles . | + | Le pilote OpenCL, a été créé pour uniformiser "massivement" les programmes de calculs parallèles((En informatique, le calcul parallèle consiste en l'exécution simultanée d'une même tâche, partitionnée et adaptée afin de pouvoir être répartie entre plusieurs processeurs en vue de traiter plus rapidement des problèmes plus grands.)). \\ |
- | + | Au départ , son emploi s'étendait aussi bien aux calculs fait par les CPU que ceux faits par les GPU, possibilité que l'on retrouve aujourd'hui dans Blender. | |
- | au départ , son emploi s'étendait aussi bien aux calculs fait par les CPU que ceux faits par les GPU . | + | * OpenCL donne la possibilité d'utiliser ou/et le CPU ou/et le GPU. |
- | + | * OpenCL est de plus en plus utilisé pour employer la puissance de calcul des cartes graphiques. | |
- | possibilité que l'on retrouve aujourd'hui dans blender . | + | |
- | + | ||
- | openCL donne la possibilité d'utiliser ou / et le CPU ou / et le GPU . | + | |
- | + | ||
- | en règle générale , aujourd'hui , openCL est de plus en plus utilisé pour employer la puissance de calcul des cartes graphiques . | + | |
- | + | ||
- | petite bibliographie openCL : | + | |
- | + | ||
- | [[https://fr.wikipedia.org/wiki/OpenCL| fr.wikipedia : openCL ]] | + | |
- | + | ||
- | [[http://igm.univ-mlv.fr/~dr/XPOSE2011/openclgpucomputing/historique.php|OpenCL et Programmation Générique sur GPU]] | + | |
- | + | ||
- | [[https://www.hardware.fr/articles/744-1/opencl-gpu-computing-enfin-democratise.html|OpenCL : le GPU Computing enfin démocratisé ?]] | + | |
- | [[https://doc.ubuntu-fr.org/opencl|openCL - ubuntu.fr (résumé) ]] | + | === Petite bibliographie openCL === |
- | petite bibliographie dtrx : | + | * [[https://fr.wikipedia.org/wiki/OpenCL| fr.wikipedia : openCL ]] |
+ | * [[http://igm.univ-mlv.fr/~dr/XPOSE2011/openclgpucomputing/historique.php|OpenCL et Programmation Générique sur GPU]] | ||
+ | * [[https://www.hardware.fr/articles/744-1/opencl-gpu-computing-enfin-democratise.html|OpenCL : le GPU Computing enfin démocratisé ?]] | ||
+ | * [[https://doc.ubuntu-fr.org/opencl|openCL - ubuntu.fr (résumé) ]] | ||
- | [[https://packages.debian.org/fr/buster/dtrx|Paquet : dtrx (buster)]] | + | === Petite bibliographie dtrx === |
- | [[https://github.com/moonpyk/dtrx|dtrx github]] | + | * [[https://packages.debian.org/fr/buster/dtrx|Paquet : dtrx (buster)]] |
+ | * [[https://github.com/moonpyk/dtrx|dtrx github]] | ||
===== Préambule ===== | ===== Préambule ===== | ||
- | <note tip>Un conseil : travaillez dans le répertoire ~/Téléchargements , c'est plus sûr . | + | <note tip>Un conseil : travaillez dans le répertoire ~/Téléchargements , c'est plus sûr.</note> |
- | <code user>cd ~/Téléchargements/</code></note> | + | ==== Téléchargements ==== |
- | <note warning>d'abord , télécharger , au choix , l'archive du pilote amdgpu-pro : | + | Avec la commande [[doc:programmation:shell:cd|cd]], se positionner dans le répertoire ''Téléchargements'' ainsi : |
- | soit celle ci : (version 19.50 pour ubuntu 18.04 LTS) : | + | <code user>cd ~/Téléchargements/</code> |
- | <code user>wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://drivers.amd.com/drivers/linux/19.50/amdgpu-pro-19.50-967956-ubuntu-18.04.tar.xz</code> | + | ==== Téléchargement de l'archive du pilote amdgpu-pro ==== |
- | soit celle là : (version 20.10 pour ubuntu 18.04 LTS) : | + | - Soit : (version 19.50 pour ubuntu 18.04 LTS , RX 500) :<code user>wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://drivers.amd.com/drivers/linux/19.50/amdgpu-pro-19.50-967956-ubuntu-18.04.tar.xz</code> |
+ | - Soit : (version 20.10 pour ubuntu 18.04 LTS , RX 500) :<code user> wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://drivers.amd.com/drivers/linux/amdgpu-pro-20.10-1048554-ubuntu-18.04.tar.xz</code> | ||
+ | - Soit : (version 21.30 pour ubuntu 20.04.3 LTS , RX 6000) :<code user> wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://drivers.amd.com/drivers/linux/amdgpu-pro-21.30-1290604-ubuntu-20.04.tar.xz</code> | ||
- | <code user> wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://drivers.amd.com/drivers/linux/amdgpu-pro-20.10-1048554-ubuntu-18.04.tar.xz</code> | + | Au cas où ces liens ne fonctionnent pas, vous pouvez vous connecter en graphique là : |
+ | * site AMD support : \\ https://www.amd.com/fr/support | ||
+ | * Ou en manuel : \\ https://www.amd.com/fr/support/graphics/radeon-500-series/radeon-rx-500-series/radeon-rx-550 | ||
+ | * Ou encore là : \\ https://www.amd.com/fr/support/graphics/radeon-500-series/radeon-rx-500-series/radeon-rx-570 | ||
+ | * voire , ici : \\ https://www.amd.com/fr/support/graphics/amd-radeon-6000-series/amd-radeon-6800-series/amd-radeon-rx-6800 | ||
+ | - Cherchez la ligne <code>+ Ubuntu X86 64-bit</code>et trouvez la case ''Téléchargement'' sur laquelle vous cliquez. | ||
+ | - Vous téléchargez ensuite l'archive dans le répertoire ''~/Téléchargements'' de votre Debian. | ||
- | la version 20.30 pour ubuntu 20.04.1 (non testé) | + | <note tip>[[doc:systeme:sudo|sudo]] a l'avantage de passer des commandes root tout en restant user</note> |
- | <code user> wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://drivers.amd.com/drivers/linux/amdgpu-pro-20.30-1109583-ubuntu-20.04.tar.xz</code> | + | |
- | </note> | + | |
- | <note important>au cas où ce lien ne fonctionne pas , vous pouvez essayer de vous connecter en graphique là : | + | - Installer dtrx((stable)) :<code user>sudo apt install dtrx </code> |
+ | - Si cela ne fonctionne pas((sous testing bullseye kernel 5.8.0-2 , par exemple)) : <code root>pip install dtrx</code> | ||
+ | - installer aussi clinfo et mesa-utils :<code user>sudo apt install clinfo mesa-utils </code> | ||
- | site AMD support : | + | ==== Scripts (RX 500) ==== |
- | <code>https://www.amd.com/fr/support</code> | + | Créer les scripts suivants : |
- | + | ||
- | en manuel : | + | |
- | + | ||
- | <code>https://www.amd.com/fr/support/graphics/radeon-500-series/radeon-rx-500-series/radeon-rx-550</code> | + | |
- | + | ||
- | ou là : | + | |
- | + | ||
- | <code>https://www.amd.com/fr/support/graphics/radeon-500-series/radeon-rx-500-series/radeon-rx-570</code> | + | |
- | + | ||
- | cherchez la ligne <code>+ Ubuntu X86 64-bit</code>et trouvez la case <code>Téléchargement*</code>sur la quelle vous cliquerez . | + | |
- | + | ||
- | vous téléchargerez ensuite l'archive dans le répertoire ~/Téléchargements de votre Debian .</note> | + | |
- | + | ||
- | <note tip>sudo possède un énorme avantage : il permet de passer des commandes root tout en restant user </note> | + | |
- | + | ||
- | et installer dtrx (stable) : | + | |
- | + | ||
- | <code user>sudo apt install dtrx </code> | + | |
- | + | ||
- | si cela ne fonctionne pas (sous testing bullseye (kernel 5.8.0-2 , par exemple) : | + | |
- | + | ||
- | <code user>pip install dtrx</code> | + | |
- | + | ||
- | installer aussi clinfo et mesa-utils : | + | |
- | + | ||
- | <code user>sudo apt install clinfo mesa-utils </code> | + | |
- | + | ||
- | créer les scripts suivants : | + | |
- | + | ||
- | copiez / collez chacun des blocs ci dessous et lancez les indépendamment en user . | + | |
- | chacun créera son fichier dans " ~/Téléchargements/ " | + | |
+ | copiez/collez chacun des blocs ci-dessous et lancez-les indépendamment en user, chacun d'eux créera son fichier dans " ~/Téléchargements/ " | ||
<code user> cat > ~/Téléchargements/Arborescence.sh <<EOF | <code user> cat > ~/Téléchargements/Arborescence.sh <<EOF | ||
Ligne 133: | Ligne 105: | ||
EOF</code> | EOF</code> | ||
- | le script ci-dessous(Copie.sh) est souvent capricieux . assurez vous bien de sa copie avant de le lancer , quitte à le copier à la main (ou à la souris) avec nano . | + | <note important>le script ci-dessous((Copie.sh)) est souvent capricieux, assurez-vous bien de sa copie avant de le lancer, quitte à le copier à la main((ou à la souris)) avec [[doc:editeurs:nano|nano]] .</note> |
<code user>cat > ~/Téléchargements/Copie.sh <<EOF | <code user>cat > ~/Téléchargements/Copie.sh <<EOF | ||
Ligne 170: | Ligne 141: | ||
EOF</code> | EOF</code> | ||
+ | |||
<code user> cat > ~/Téléchargements/maj.sh <<EOF | <code user> cat > ~/Téléchargements/maj.sh <<EOF | ||
Ligne 192: | Ligne 164: | ||
EOF</code> | EOF</code> | ||
- | <note warning>une fois les scripts copiés , n'oubliez pas : | + | <note important>Une fois les scripts copiés/collés, enregistrés, pour pouvoir les utiliser en user((utilisateur)), n'oubliez pas de modifier les droits d'utilisations des scripts((actuellement réservés à root)) avec la commande [[doc:systeme:chmod|chmod]].</note> |
- | <code root>chmod u+x *.sh</code> par exemple </note> | + | ==== Télécharger les scripts (mon Google Drive) ==== |
+ | <code user>https://drive.google.com/file/d/1jjH6TviDG0Yje-qAeHyvI78d_IeIPpMi/view?usp=sharing</code> | ||
+ | <code user>https://drive.google.com/file/d/11FWH7hDB3EYN3NN_MprdzpCyskl2Alxv/view?usp=sharing</code> | ||
+ | <code user>https://drive.google.com/file/d/1J9MYmjxYpI9-MS9IRRcKTGGleBSVLPtg/view?usp=sharing</code> | ||
+ | <code user>https://drive.google.com/file/d/1ddBtZC5ZE3t_b-U1k4H7rbNrFUxn1_sH/view?usp=sharing</code> | ||
+ | |||
+ | ==== Autorisation des scripts (les rendre exécutables) ==== | ||
+ | |||
+ | puis on donne les autorisations au fichier : | ||
+ | |||
+ | <code user>sudo chmod u+x ~/Téléchargements/Arborescence.sh</code> | ||
+ | |||
+ | <code user>sudo chmod u+x ~/Téléchargements/Extraction.sh</code> | ||
+ | |||
+ | <code user>sudo chmod u+x ~/Téléchargements/Copie.sh</code> | ||
+ | |||
+ | <code user>sudo chmod u+x ~/Téléchargements/maj.sh</code> | ||
+ | |||
+ | <code user>sudo chmod u+x ~/Téléchargements/raz.sh</code> | ||
+ | |||
===== Installation ===== | ===== Installation ===== | ||
- | <note tip>commencer par se placer dans le répertoire Téléchargements | + | <note tip>commencer par se placer dans le répertoire Téléchargements :<code user>cd ~/Téléchargements/</code></note> |
+ | On commence par créer l'arborescence : - <code user>sudo bash ~/Téléchargements/Arborescence.sh </code> | ||
+ | - on décompacte les deb :<code user>sudo bash ~/Téléchargements/Extraction.sh </code> | ||
+ | - on copie les bons fichiers : | ||
+ | - <code user>sudo bash ~/Téléchargements/Copie.sh</code> | ||
+ | - on met à jour : | ||
+ | - <code user>sudo bash ~/Téléchargements/maj.sh</code> | ||
+ | - en cas de doute ou de besoin , on peut tout virer :<code user>sudo bash ~/Téléchargements/raz.sh </code> | ||
- | <code user>cd ~/Téléchargements/</code></note> | + | ===== Script git ===== |
- | on commence par créer l'arborescence : | + | un script git qui télécharge amdgpu-pro et installe OpenCL et Vulkan . |
- | <code user>sudo bash ~/Téléchargements/Arborescence.sh </code> | + | actuellement la version 21.30 du 04/08/2021 pour ubuntu 20.04.3 LTS . |
+ | fonctionne, en théorie , pour RX 5000 ET RX 6000 . | ||
+ | prise en charge du noyau 5.11 . | ||
- | on décompacte les deb : | + | maintenant fonctionnel sur debian sid . (noyau 5.15.6 kernel.org) |
- | <code user>sudo bash ~/Téléchargements/Extraction.sh </code> | + | [[https://github.com/kytulendu| -- site github de kytulendu -- ]] |
- | on copie les bons fichiers : | + | [[https://gist.github.com/kytulendu/3351b5d0b4f947e19df36b1ea3c95cbe| -- script git -- ]] |
- | <code user>sudo bash ~/Téléchargements/Copie.sh</code> | + | <code user>git clone https://gist.github.com/3351b5d0b4f947e19df36b1ea3c95cbe.git</code> |
- | on met à jour : | + | <note tip> installer "git" au préalable |
+ | <code user>sudo apt install --reinstall git </code></note> | ||
- | <code user>sudo bash ~/Téléchargements/maj.sh</code> | + | <note tip> merci à kytulendu </note> |
- | en cas de doute ou de besoin , on peut tout virer : | + | ===== Commande AMD (archive) ===== |
- | <code user>sudo bash ~/Téléchargements/raz.sh </code> | + | Télécharger l'archive 21.30 |
+ | <code user> wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://drivers.amd.com/drivers/linux/amdgpu-pro-21.30-1290604-ubuntu-20.04.tar.xz</code> | ||
+ | se placer dans le bon répertoire : | ||
+ | <code user>cd ~/Téléchargements/ </code> | ||
- | ===== Utilisation ===== | + | décompacter l'archive : |
+ | <code user>tar -xJf amdgpu-pro-21.30-1290604-ubuntu-20.04.tar.xz </code> | ||
- | pour tester blender avec openCL , on peut télécharger des exemples ici : | + | se placer dans le bon dossier : |
+ | <code user>cd ~/Téléchargements/amdgpu-pro-21.30-1290604-ubuntu-20.04 </code> | ||
+ | appliquer la commande : | ||
+ | [[https://community.amd.com/t5/drivers-software/opencl-linux-debian-bullseye-sid/m-p/441901#M138183|mon fil sur AMD]] | ||
+ | <code user>sudo ./amdgpu-install --opencl=legacy --headless --no-dkms </code> | ||
+ | <note>merci roesjka mais selon les derniers développements , cette commande installe le pilote legacy . | ||
+ | |||
+ | donc , à priori , pour les générations "vega" et "pré - vega" . </note> | ||
+ | |||
+ | [[https://community.amd.com/t5/drivers-software/install-drivers-21-30-to-get-opencl-rocr-support-on-ubuntu-20-04/m-p/492118| lien deepdelirum ]] | ||
+ | <code user>sudo ./amdgpu-install --opencl=rocr --headless</code> | ||
+ | vous pourrez obtenir ceci (malheureusement) : | ||
+ | <code>Des erreurs ont été rencontrées pendant l'exécution : | ||
+ | amdgpu-dkms | ||
+ | amdgpu-pro-rocr-opencl | ||
+ | E: Sub-process /usr/bin/dpkg returned an error code (1)</code> | ||
+ | |||
+ | une autre commande | ||
+ | vérifier l'installation : | ||
+ | <code user>clinfo </code> | ||
+ | |||
+ | pour désinstaller : | ||
+ | <code user>sudo amdgpu-uninstall </code> | ||
+ | ===== Commande AMD (sources) ===== | ||
+ | |||
+ | AMD vient de créer une archive au format DEB . | ||
+ | à tester : | ||
+ | |||
+ | <code user> wget --referer=https://www.amd.com/ -P $HOME/Téléchargements/ https://repo.radeon.com/amdgpu-install/21.40.1/ubuntu/focal/amdgpu-install_21.40.1.40501-1_all.deb </code> | ||
+ | |||
+ | archive 21.40.1 , en théorie pour AMD RX 6000 . a vérifier . | ||
+ | |||
+ | aux dernières nouvelles , sur ma config , installe le dépôt AMD (ubuntu). | ||
+ | |||
+ | [[https://amdgpu-install.readthedocs.io/en/latest/|La Documentation officielle A.M.D. (AMDGPU) ]] | ||
+ | |||
+ | [[https://rocmdocs.amd.com/en/latest/Current_Release_Notes/Current-Release-Notes.html|La Documentation officielle A.M.D. (Rocm) ]] | ||
+ | |||
+ | ce paquet deb installe le sources suivant : | ||
+ | |||
+ | <file apt_sources amdgpu-proprietary.list> | ||
+ | # Enabling this repository requires acceptance of the following license: | ||
+ | # /usr/share/amdgpu-install/AMDGPUPROEULA | ||
+ | deb https://repo.radeon.com/amdgpu/21.40.1/ubuntu focal proprietary | ||
+ | </file> | ||
+ | |||
+ | <code user>amdgpu-install --opencl=rocr --no-dkms</code> | ||
+ | <code>Lecture des listes de paquets... Fait | ||
+ | Construction de l'arbre des dépendances... Fait | ||
+ | Lecture des informations d'état... Fait | ||
+ | E: Impossible de trouver le paquet amdgpu-lib | ||
+ | E: Impossible de trouver le paquet amdgpu-lib32 | ||
+ | E: Impossible de trouver le paquet rocm-hip-runtime | ||
+ | E: Impossible de trouver le paquet rocm-opencl-runtime | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ===== Utilisation ===== | ||
+ | |||
+ | pour tester blender avec openCL , on peut télécharger des exemples ici : \\ | ||
[[https://www.blender.org/download/demo-files/|exemples blender ]] | [[https://www.blender.org/download/demo-files/|exemples blender ]] | ||
Ligne 237: | Ligne 302: | ||
la carte (RX 550) est montée en pointe , à 75 °C , au maxi une conso de 22 watts et un ventilo de 1300 RPM . | la carte (RX 550) est montée en pointe , à 75 °C , au maxi une conso de 22 watts et un ventilo de 1300 RPM . | ||
+ | |||
+ | la RX 570 , elle , est montée , en pointe à 66 °C , conso maxi 100 watts et un ventilo à 1900 Tr/Min . | ||
+ | |||
+ | la RX 6800 est montée , en pointe , à 71 °C . conso maxi environ 220 watts . | ||
voici quelques écrans que vous obtiendrez peut être à la fin de l'installation : | voici quelques écrans que vous obtiendrez peut être à la fin de l'installation : | ||
- | tests fait avec la version 19.50 . | + | tests fait avec les versions : |
+ | |||
+ | -19.50 (RX 550) , | ||
+ | |||
+ | -20.10 (RX 570) et | ||
- | la version 20.10 donne le même résultat . | + | -21.30 (RX 6800) |
- | (légèrement updaté) | + | |
==== AMD RX 550 4GB DDR5 ==== | ==== AMD RX 550 4GB DDR5 ==== | ||
Ligne 639: | Ligne 711: | ||
</code> | </code> | ||
- | ==== pilote 20.10 CL Info ==== | + | ==== AMD RX 6800 16GB GDDR6 ==== |
- | <code user>clinfo</code> | + | lspci -nnkd::0300 |
- | <code>Number of platforms 1 | + | <code user>0a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] [1002:73bf] (rev c3) |
+ | Subsystem: Sapphire Technology Limited Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] [1da2:e437] | ||
+ | Kernel driver in use: amdgpu | ||
+ | Kernel modules: amdgpu | ||
+ | </code> | ||
+ | |||
+ | glxinfo -B | ||
+ | <code user>name of display: :0 | ||
+ | display: :0 screen: 0 | ||
+ | direct rendering: Yes | ||
+ | Extended renderer info (GLX_MESA_query_renderer): | ||
+ | Vendor: AMD (0x1002) | ||
+ | Device: AMD Radeon RX 6800 (SIENNA_CICHLID, DRM 3.42.0, 5.14.0-3-amd64, LLVM 12.0.1) (0x73bf) | ||
+ | Version: 21.2.4 | ||
+ | Accelerated: yes | ||
+ | Video memory: 16384MB | ||
+ | Unified memory: no | ||
+ | Preferred profile: core (0x1) | ||
+ | Max core profile version: 4.6 | ||
+ | Max compat profile version: 4.6 | ||
+ | Max GLES1 profile version: 1.1 | ||
+ | Max GLES[23] profile version: 3.2 | ||
+ | Memory info (GL_ATI_meminfo): | ||
+ | VBO free memory - total: 15158 MB, largest block: 15158 MB | ||
+ | VBO free aux. memory - total: 16286 MB, largest block: 16286 MB | ||
+ | Texture free memory - total: 15158 MB, largest block: 15158 MB | ||
+ | Texture free aux. memory - total: 16286 MB, largest block: 16286 MB | ||
+ | Renderbuffer free memory - total: 15158 MB, largest block: 15158 MB | ||
+ | Renderbuffer free aux. memory - total: 16286 MB, largest block: 16286 MB | ||
+ | Memory info (GL_NVX_gpu_memory_info): | ||
+ | Dedicated video memory: 16384 MB | ||
+ | Total available memory: 32752 MB | ||
+ | Currently available dedicated video memory: 15158 MB | ||
+ | OpenGL vendor string: AMD | ||
+ | OpenGL renderer string: AMD Radeon RX 6800 (SIENNA_CICHLID, DRM 3.42.0, 5.14.0-3-amd64, LLVM 12.0.1) | ||
+ | OpenGL core profile version string: 4.6 (Core Profile) Mesa 21.2.4 | ||
+ | OpenGL core profile shading language version string: 4.60 | ||
+ | OpenGL core profile context flags: (none) | ||
+ | OpenGL core profile profile mask: core profile | ||
+ | |||
+ | OpenGL version string: 4.6 (Compatibility Profile) Mesa 21.2.4 | ||
+ | OpenGL shading language version string: 4.60 | ||
+ | OpenGL context flags: (none) | ||
+ | OpenGL profile mask: compatibility profile | ||
+ | |||
+ | OpenGL ES profile version string: OpenGL ES 3.2 Mesa 21.2.4 | ||
+ | OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20 | ||
+ | </code> | ||
+ | |||
+ | OpenCL enfin prêt pour RX6000 (RX6800) noyau 5.15.6 minimum : | ||
+ | clinfo : | ||
+ | <code user>alain@sid:~$ clinfo | ||
+ | Number of platforms 1 | ||
Platform Name AMD Accelerated Parallel Processing | Platform Name AMD Accelerated Parallel Processing | ||
Platform Vendor Advanced Micro Devices, Inc. | Platform Vendor Advanced Micro Devices, Inc. | ||
- | Platform Version OpenCL 2.1 AMD-APP (3075.10) | + | Platform Version OpenCL 2.0 AMD-APP (3314.0) |
Platform Profile FULL_PROFILE | Platform Profile FULL_PROFILE | ||
- | Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices | + | Platform Extensions cl_khr_icd cl_amd_event_callback |
- | Platform Host timer resolution 1ns | + | |
Platform Extensions function suffix AMD | Platform Extensions function suffix AMD | ||
Platform Name AMD Accelerated Parallel Processing | Platform Name AMD Accelerated Parallel Processing | ||
Number of devices 1 | Number of devices 1 | ||
- | Device Name Ellesmere | + | Device Name gfx1030 |
Device Vendor Advanced Micro Devices, Inc. | Device Vendor Advanced Micro Devices, Inc. | ||
Device Vendor ID 0x1002 | Device Vendor ID 0x1002 | ||
- | Device Version OpenCL 1.2 AMD-APP (3075.10) | + | Device Version OpenCL 2.0 |
- | Driver Version 3075.10 | + | Driver Version 3314.0 (HSA1.1,LC) |
- | Device OpenCL C Version OpenCL C 1.2 | + | Device OpenCL C Version OpenCL C 2.0 |
Device Type GPU | Device Type GPU | ||
- | Device Board Name (AMD) Radeon RX 570 Series | + | Device Board Name (AMD) Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] |
- | Device Topology (AMD) PCI-E, 0b:00.0 | + | Device PCI-e ID (AMD) 0x73bf |
+ | Device Topology (AMD) PCI-E, 0000:0a:00.0 | ||
Device Profile FULL_PROFILE | Device Profile FULL_PROFILE | ||
Device Available Yes | Device Available Yes | ||
Compiler Available Yes | Compiler Available Yes | ||
Linker Available Yes | Linker Available Yes | ||
- | Max compute units 32 | + | Max compute units 30 |
SIMD per compute unit (AMD) 4 | SIMD per compute unit (AMD) 4 | ||
- | SIMD width (AMD) 16 | + | SIMD width (AMD) 32 |
SIMD instruction width (AMD) 1 | SIMD instruction width (AMD) 1 | ||
- | Max clock frequency 1244MHz | + | Max clock frequency 2475MHz |
- | Graphics IP (AMD) 8.0 | + | Graphics IP (AMD) 10.3 |
Device Partition (core) | Device Partition (core) | ||
- | Max number of sub-devices 32 | + | Max number of sub-devices 30 |
Supported partition types None | Supported partition types None | ||
Supported affinity domains (n/a) | Supported affinity domains (n/a) | ||
Ligne 680: | Ligne 804: | ||
Preferred work group size (AMD) 256 | Preferred work group size (AMD) 256 | ||
Max work group size (AMD) 1024 | Max work group size (AMD) 1024 | ||
- | Preferred work group size multiple 64 | + | Preferred work group size multiple (kernel) 32 |
- | Wavefront width (AMD) 64 | + | Wavefront width (AMD) 32 |
Preferred / native vector sizes | Preferred / native vector sizes | ||
char 4 / 4 | char 4 / 4 | ||
Ligne 699: | Ligne 823: | ||
Support is emulated in software No | Support is emulated in software No | ||
Single-precision Floating-point support (core) | Single-precision Floating-point support (core) | ||
- | Denormals No | + | Denormals Yes |
Infinity and NANs Yes | Infinity and NANs Yes | ||
Round to nearest Yes | Round to nearest Yes | ||
Ligne 716: | Ligne 840: | ||
Support is emulated in software No | Support is emulated in software No | ||
Address bits 64, Little-Endian | Address bits 64, Little-Endian | ||
- | Global memory size 8022630400 (7.472GiB) | + | Global memory size 17163091968 (15.98GiB) |
- | Global free memory (AMD) 7815016 (7.453GiB) | + | Global free memory (AMD) 16760832 (15.98GiB) 16760832 (15.98GiB) |
Global memory channels (AMD) 8 | Global memory channels (AMD) 8 | ||
- | Global memory banks per channel (AMD) 16 | + | Global memory banks per channel (AMD) 4 |
Global memory bank width (AMD) 256 bytes | Global memory bank width (AMD) 256 bytes | ||
Error Correction support No | Error Correction support No | ||
- | Max memory allocation 4244635648 (3.953GiB) | + | Max memory allocation 14588628168 (13.59GiB) |
Unified memory for Host and Device No | Unified memory for Host and Device No | ||
+ | Shared Virtual Memory (SVM) capabilities (core) | ||
+ | Coarse-grained buffer sharing Yes | ||
+ | Fine-grained buffer sharing Yes | ||
+ | Fine-grained system sharing No | ||
+ | Atomics No | ||
Minimum alignment for any data type 128 bytes | Minimum alignment for any data type 128 bytes | ||
- | Alignment of base address 2048 bits (256 bytes) | + | Alignment of base address 1024 bits (128 bytes) |
+ | Preferred alignment for atomics | ||
+ | SVM 0 bytes | ||
+ | Global 0 bytes | ||
+ | Local 0 bytes | ||
+ | Max size for global variable 14588628168 (13.59GiB) | ||
+ | Preferred total size of global vars 17163091968 (15.98GiB) | ||
Global Memory cache type Read/Write | Global Memory cache type Read/Write | ||
Global Memory cache size 16384 (16KiB) | Global Memory cache size 16384 (16KiB) | ||
Global Memory cache line size 64 bytes | Global Memory cache line size 64 bytes | ||
Image support Yes | Image support Yes | ||
- | Max number of samplers per kernel 16 | + | Max number of samplers per kernel 29631 |
Max size for 1D images from buffer 134217728 pixels | Max size for 1D images from buffer 134217728 pixels | ||
- | Max 1D or 2D image array size 2048 images | + | Max 1D or 2D image array size 8192 images |
Base address alignment for 2D image buffers 256 bytes | Base address alignment for 2D image buffers 256 bytes | ||
Pitch alignment for 2D image buffers 256 pixels | Pitch alignment for 2D image buffers 256 pixels | ||
Max 2D image size 16384x16384 pixels | Max 2D image size 16384x16384 pixels | ||
- | Max 3D image size 2048x2048x2048 pixels | + | Max 3D image size 16384x16384x8192 pixels |
Max number of read image args 128 | Max number of read image args 128 | ||
Max number of write image args 8 | Max number of write image args 8 | ||
+ | Max number of read/write image args 64 | ||
+ | Max number of pipe args 16 | ||
+ | Max active pipe reservations 16 | ||
+ | Max pipe packet size 1703726280 (1.587GiB) | ||
Local memory type Local | Local memory type Local | ||
- | Local memory size 32768 (32KiB) | + | Local memory size 65536 (64KiB) |
- | Local memory syze per CU (AMD) 65536 (64KiB) | + | Local memory size per CU (AMD) 65536 (64KiB) |
Local memory banks (AMD) 32 | Local memory banks (AMD) 32 | ||
Max number of constant args 8 | Max number of constant args 8 | ||
- | Max constant buffer size 4244635648 (3.953GiB) | + | Max constant buffer size 14588628168 (13.59GiB) |
Preferred constant buffer size (AMD) 16384 (16KiB) | Preferred constant buffer size (AMD) 16384 (16KiB) | ||
Max size of kernel argument 1024 | Max size of kernel argument 1024 | ||
- | Queue properties | + | Queue properties (on host) |
Out-of-order execution No | Out-of-order execution No | ||
Profiling Yes | Profiling Yes | ||
+ | Queue properties (on device) | ||
+ | Out-of-order execution Yes | ||
+ | Profiling Yes | ||
+ | Preferred size 262144 (256KiB) | ||
+ | Max size 8388608 (8MiB) | ||
+ | Max queues on device 1 | ||
+ | Max events on device 1024 | ||
Prefer user sync for interop Yes | Prefer user sync for interop Yes | ||
+ | Number of P2P devices (AMD) 0 | ||
Profiling timer resolution 1ns | Profiling timer resolution 1ns | ||
- | Profiling timer offset since Epoch (AMD) 1591853725436918849ns (Thu Jun 11 07:35:25 2020) | + | Profiling timer offset since Epoch (AMD) 0ns (Thu Jan 1 01:00:00 1970) |
Execution capabilities | Execution capabilities | ||
Run OpenCL kernels Yes | Run OpenCL kernels Yes | ||
Run native kernels No | Run native kernels No | ||
- | Thread trace supported (AMD) Yes | + | Thread trace supported (AMD) No |
- | Number of async queues (AMD) 2 | + | Number of async queues (AMD) 8 |
- | Max real-time compute queues (AMD) 0 | + | Max real-time compute queues (AMD) 8 |
- | Max real-time compute units (AMD) 909198854 | + | Max real-time compute units (AMD) 30 |
- | SPIR versions 1.2 | + | |
printf() buffer size 4194304 (4MiB) | printf() buffer size 4194304 (4MiB) | ||
Built-in kernels (n/a) | Built-in kernels (n/a) | ||
- | Device Extensions cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_image2d_from_buffer cl_khr_spir cl_khr_gl_event | + | Device Extensions cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_media_ops cl_amd_media_ops2 cl_khr_image2d_from_buffer cl_khr_subgroups cl_khr_depth_images cl_amd_copy_buffer_p2p cl_amd_assembly_program |
NULL platform behavior | NULL platform behavior | ||
- | clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform | + | clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) AMD Accelerated Parallel Processing |
- | clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform | + | clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [AMD] |
- | clCreateContext(NULL, ...) [default] No platform | + | clCreateContext(NULL, ...) [default] Success [AMD] |
- | clCreateContext(NULL, ...) [other] Success [AMD] | + | |
clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1) | clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1) | ||
Platform Name AMD Accelerated Parallel Processing | Platform Name AMD Accelerated Parallel Processing | ||
- | Device Name Ellesmere | + | Device Name gfx1030 |
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform | clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform | ||
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1) | clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1) | ||
Platform Name AMD Accelerated Parallel Processing | Platform Name AMD Accelerated Parallel Processing | ||
- | Device Name Ellesmere | + | Device Name gfx1030 |
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform | clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform | ||
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform | clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform | ||
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1) | clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1) | ||
Platform Name AMD Accelerated Parallel Processing | Platform Name AMD Accelerated Parallel Processing | ||
- | Device Name Ellesmere | + | Device Name gfx1030 |
- | </code> | + | |
+ | ICD loader properties | ||
+ | ICD loader Name OpenCL ICD Loader | ||
+ | ICD loader Vendor OCL Icd free software | ||
+ | ICD loader Version 2.2.14 | ||
+ | ICD loader Profile OpenCL 3.0 | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ==== Solution Alternative ==== | ||
+ | testé sur debian testing bullseye (kernel 5.9.0-1) | ||
+ | le paquet et ses dépendances s'installe très bien mais n'est pas fonctionnel dans blender 2.83.5 | ||
+ | |||
+ | <code root>apt search mesa-opencl-icd</code> | ||
+ | <code>En train de trier... Fait | ||
+ | Recherche en texte intégral... Fait | ||
+ | mesa-opencl-icd/testing,now 20.1.9-1 amd64 [installé] | ||
+ | free implementation of the OpenCL API -- ICD runtime</code> | ||
+ | |||
+ | <code user>apt show mesa-opencl-icd</code> | ||
+ | <code>Package: mesa-opencl-icd | ||
+ | Version: 20.1.9-1 | ||
+ | Priority: optional | ||
+ | Section: libs | ||
+ | Source: mesa | ||
+ | Maintainer: Debian X Strike Force <debian-x@lists.debian.org> | ||
+ | Installed-Size: 29,4 MB | ||
+ | Provides: opencl-icd | ||
+ | Depends: libclc-r600 (>= 0.2.0+git20180312-1~), libclc-amdgcn (>= 0.2.0+git20180312-1~), ocl-icd-libopencl1 | libopencl1, libc6 (>= 2.29), libclang-cpp10, libdrm-amdgpu1 (>= 2.4.100), libdrm-nouveau2 (>= 2.4.66), libdrm-radeon1 (>= 2.4.31), libdrm2 (>= 2.4.75), libelf1 (>= 0.142), libexpat1 (>= 2.0.1), libgcc-s1 (>= 3.4), libllvm10 (>= 1:9~svn298832-1~), libstdc++6 (>= 5.2), libzstd1 (>= 1.3.2), zlib1g (>= 1:1.1.4) | ||
+ | Homepage: https://mesa3d.org/ | ||
+ | Tag: role::shared-lib | ||
+ | Download-Size: 4809 kB | ||
+ | APT-Manual-Installed: yes | ||
+ | APT-Sources: http://deb.debian.org/debian testing/main amd64 Packages | ||
+ | Description: free implementation of the OpenCL API -- ICD runtime | ||
+ | This package contains the mesa implementation of the OpenCL (Open Compute | ||
+ | Language) library, which is intended for use with an ICD loader. OpenCL | ||
+ | provides a standardized interface for computational analysis on graphical | ||
+ | processing units. | ||
+ | </code> | ||
+ | |||
+ |