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 [11/04/2020 16:03] Debian Alain [Introduction] |
atelier:chantier:opencl-avec-amd [11/06/2020 09:23] Debian Alain [Préambule] |
||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
* 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 ! :) | + | * 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 : [[: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 | ||
Ligne 16: | Ligne 16: | ||
===== Introduction ===== | ===== Introduction ===== | ||
- | ce petit tuto reprend les étapes d'installation du pilote openCL sur carte AMD (RX 550 4GB) | + | 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 , | le tout , fait sur linux debian testing bullseye , | ||
- | X.org GNOME , blender 2.82a | + | X.org GNOME 3.34.2 et 3.36.2 , blender 2.82a |
et processeur AMD RYZEN 7 1700 X | et processeur AMD RYZEN 7 1700 X | ||
Ligne 26: | Ligne 26: | ||
un grand merci à PLOP6 (irc) sans qui rien n'aurai été possible . | un grand merci à PLOP6 (irc) sans qui rien n'aurai été possible . | ||
+ | ===== Historique ===== | ||
+ | |||
+ | openCL , à l'origine , a été créé pour uniformiser les programmes de calcul "massivement" parallèles . | ||
+ | |||
+ | 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 . | ||
+ | |||
+ | 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 dtrx : | ||
+ | |||
+ | [[https://memo-linux.com/dtrx-ou-la-decompression-facile-en-ligne-de-commande-sous-gnulinux/| dtrx ou la décompression facile en ligne de commande]] | ||
+ | |||
+ | [[https://packages.debian.org/fr/buster/dtrx|Paquet : dtrx (buster)]] | ||
===== Préambule ===== | ===== Préambule ===== | ||
- | <note important>Un conseil : travaillez dans le répertoire ~/Téléchargements , c'est plus sûr .</note> | + | <note important>Un conseil : travaillez dans le répertoire ~/Téléchargements , c'est plus sûr . |
- | d'abord , télécharger l'archive du pilote amdgpu-pro (version 19.50 pour ubuntu 18.04.4 LTS) : | + | <code user>cd ~/Téléchargements/</code></note> |
- | <code user>wget https://drivers.amd.com/drivers/linux/19.50/amdgpu-pro-19.50-967956-ubuntu-18.04.tar.xz</code> | + | <note warning>d'abord , télécharger l'archive du pilote amdgpu-pro |
+ | (version 19.50 pour ubuntu 18.04 LTS) : | ||
+ | |||
+ | <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> | ||
+ | |||
+ | (version 20.10 pour ubuntu 18.04 LTS) : | ||
+ | |||
+ | <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></note> | ||
+ | |||
+ | <note important>au cas où ce lien ne fonctionne pas , vous pouvez essayer de vous connecter en graphique là : | ||
+ | |||
+ | 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) : | et installer dtrx (stable) : | ||
- | <code root>apt install dtrx </code> | + | <code user>sudo apt install dtrx </code> |
créer les scripts suivants : | créer les scripts suivants : | ||
- | <code root>nano Arborescence.sh</code> | + | copiez / collez chacun des blocs ci dessous et lancez les indépendamment en user . |
- | <code>#!/bin/bash | + | chacun créera son fichier dans " ~/Téléchargements/ " |
+ | |||
+ | <code user> cat > ~/Téléchargements/Arborescence.sh <<EOF | ||
+ | |||
+ | #!/bin/bash | ||
mkdir -p /opt/amdgpu-pro/lib/x86_64-linux-gnu | mkdir -p /opt/amdgpu-pro/lib/x86_64-linux-gnu | ||
- | mkdir -p /etc/OpenCL/vendors</code> | + | mkdir -p /etc/OpenCL/vendors |
- | <code root>nano Extraction.sh</code> | + | EOF</code> |
- | <code>#!/bin/bash | + | |
+ | <code user>cat > ~/Téléchargements/Extraction.sh <<EOF | ||
+ | |||
+ | #!/bin/bash | ||
if ! which dtrx > /dev/null; then | if ! which dtrx > /dev/null; then | ||
Ligne 55: | Ligne 112: | ||
exit 1 | exit 1 | ||
fi | fi | ||
- | dtrx -r -q amdgpu-pro-*.tar.xz</code> | + | dtrx -r -q amdgpu-pro-*.tar.xz |
+ | |||
+ | |||
+ | 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 . | ||
- | <code root>nano Copie.sh</code> | + | <code user>cat > ~/Téléchargements/Copie.sh <<EOF |
- | <code>#!/bin/bash | + | #!/bin/bash |
LibDir="/opt/amdgpu-pro/lib/x86_64-linux-gnu/" | LibDir="/opt/amdgpu-pro/lib/x86_64-linux-gnu/" | ||
Ligne 89: | Ligne 151: | ||
cp ${CustDir}amdocl-orca64.icd ${VendorsDir} | cp ${CustDir}amdocl-orca64.icd ${VendorsDir} | ||
CustDir="${DriversDir}opencl-amdgpu-pro-icd_*/etc/OpenCL/vendors/" | CustDir="${DriversDir}opencl-amdgpu-pro-icd_*/etc/OpenCL/vendors/" | ||
- | cp ${CustDir}amdocl64.icd ${VendorsDir}</code> | + | cp ${CustDir}amdocl64.icd ${VendorsDir} |
- | <code root>nano maj.sh</code> | + | EOF</code> |
- | <code>#!/bin/bash | + | |
+ | <code user> cat > ~/Téléchargements/maj.sh <<EOF | ||
+ | |||
+ | #!/bin/bash | ||
echo "/opt/amdgpu-pro/lib/x86_64-linux-gnu" > /etc/ld.so.conf.d/amdgpu-pro_custom-opencl.conf | echo "/opt/amdgpu-pro/lib/x86_64-linux-gnu" > /etc/ld.so.conf.d/amdgpu-pro_custom-opencl.conf | ||
- | ldconfig</code> | + | ldconfig |
- | <code root>nano raz.sh</code> | + | EOF</code> |
- | <code>#!/bin/bash | + | <code user>cat > ~/Téléchargements/raz.sh <<EOF |
+ | |||
+ | #!/bin/bash | ||
rm -rf /etc/OpenCL | rm -rf /etc/OpenCL | ||
rm -rf /opt/amdgpu-pro | rm -rf /opt/amdgpu-pro | ||
rm /etc/ld.so.conf.d/amdgpu-pro_custom-opencl.conf | rm /etc/ld.so.conf.d/amdgpu-pro_custom-opencl.conf | ||
- | ldconfig</code> | + | ldconfig |
+ | EOF</code> | ||
+ | <note warning>une fois les scripts copiés , n'oubliez pas : | ||
+ | <code root>chmod u+x *.sh</code> par exemple </note> | ||
===== Installation ===== | ===== Installation ===== | ||
+ | |||
+ | <note warning>commencer par se placer dans le répertoire Téléchargements</note> | ||
+ | |||
+ | <code user>cd ~/Téléchargements/</code> | ||
on commence par créer l'arborescence : | on commence par créer l'arborescence : | ||
- | <code user>sudo bash Arborescence.sh </code> | + | <code user>sudo bash ~/Téléchargements/Arborescence.sh </code> |
on décompacte les deb : | on décompacte les deb : | ||
- | <code user>sudo bash Extraction.sh </code> | + | <code user>sudo bash ~/Téléchargements/Extraction.sh </code> |
on copie les bons fichiers : | on copie les bons fichiers : | ||
- | <code user>sudo bash Copie.sh</code> | + | <code user>sudo bash ~/Téléchargements/Copie.sh</code> |
on met à jour : | on met à jour : | ||
- | <code user>sudo bash maj.sh</code> | + | <code user>sudo bash ~/Téléchargements/maj.sh</code> |
en cas de doute ou de besoin , on peut tout virer : | en cas de doute ou de besoin , on peut tout virer : | ||
- | <code user>sudo bash raz.sh </code> | + | <code user>sudo bash ~/Téléchargements/raz.sh </code> |
Ligne 140: | Ligne 214: | ||
vous pourrez choisir votre carte graphique (ici AMD Radeon RX 550 / 550 Series) | vous pourrez choisir votre carte graphique (ici AMD Radeon RX 550 / 550 Series) | ||
- | et / ou votre processeur (AMD RYZEN 7 1700X , ici) | + | et / ou votre processeur (AMD RYZEN 7 1700X , par exemple) |
un grand merci à plop6 (irc) sans qui rien n'aurai été possible ... | un grand merci à plop6 (irc) sans qui rien n'aurai été possible ... | ||
+ | ===== Post Scriptum ===== | ||
+ | |||
+ | la carte (RX 550) est montée en pointe , à 75 °C , au maxi une conso de 22 watts et un ventilo de 1300 RPM . | ||
+ | |||
+ | voici quelques écrans que vous obtiendrez peut être à la fin de l'installation : | ||
+ | |||
+ | ==== AMD RX 550 4GB DDR5 ==== | ||
+ | ma carte graphique : | ||
+ | <code user>lspci -nnkd::0300</code> | ||
+ | <code>0a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] [1002:699f] (rev c7) | ||
+ | Subsystem: Sapphire Technology Limited Lexa PRO [Radeon RX 550] [1da2:e367] | ||
+ | Kernel driver in use: amdgpu | ||
+ | Kernel modules: amdgpu</code> | ||
+ | |||
+ | son pilote openGL (amdgpu) : | ||
+ | <code user>glxinfo -B</code> | ||
+ | <code>name of display: :0 | ||
+ | display: :0 screen: 0 | ||
+ | direct rendering: Yes | ||
+ | Extended renderer info (GLX_MESA_query_renderer): | ||
+ | Vendor: X.Org (0x1002) | ||
+ | Device: Radeon RX550/550 Series (POLARIS12, DRM 3.35.0, 5.4.0-4-amd64, LLVM 9.0.1) (0x699f) | ||
+ | Version: 19.3.3 | ||
+ | Accelerated: yes | ||
+ | Video memory: 4096MB | ||
+ | Unified memory: no | ||
+ | Preferred profile: core (0x1) | ||
+ | Max core profile version: 4.5 | ||
+ | Max compat profile version: 4.5 | ||
+ | Max GLES1 profile version: 1.1 | ||
+ | Max GLES[23] profile version: 3.2 | ||
+ | Memory info (GL_ATI_meminfo): | ||
+ | VBO free memory - total: 3648 MB, largest block: 3648 MB | ||
+ | VBO free aux. memory - total: 3577 MB, largest block: 3577 MB | ||
+ | Texture free memory - total: 3648 MB, largest block: 3648 MB | ||
+ | Texture free aux. memory - total: 3577 MB, largest block: 3577 MB | ||
+ | Renderbuffer free memory - total: 3648 MB, largest block: 3648 MB | ||
+ | Renderbuffer free aux. memory - total: 3577 MB, largest block: 3577 MB | ||
+ | Memory info (GL_NVX_gpu_memory_info): | ||
+ | Dedicated video memory: 4096 MB | ||
+ | Total available memory: 8192 MB | ||
+ | Currently available dedicated video memory: 3648 MB | ||
+ | OpenGL vendor string: X.Org | ||
+ | OpenGL renderer string: Radeon RX550/550 Series (POLARIS12, DRM 3.35.0, 5.4.0-4-amd64, LLVM 9.0.1) | ||
+ | OpenGL core profile version string: 4.5 (Core Profile) Mesa 19.3.3 | ||
+ | OpenGL core profile shading language version string: 4.50 | ||
+ | OpenGL core profile context flags: (none) | ||
+ | OpenGL core profile profile mask: core profile | ||
+ | |||
+ | OpenGL version string: 4.5 (Compatibility Profile) Mesa 19.3.3 | ||
+ | OpenGL shading language version string: 4.50 | ||
+ | OpenGL context flags: (none) | ||
+ | OpenGL profile mask: compatibility profile | ||
+ | |||
+ | OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.3.3 | ||
+ | OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20</code> | ||
+ | |||
+ | le pilote openCL : | ||
+ | <code user>clinfo</code> | ||
+ | <code>Number of platforms 1 | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Platform Vendor Advanced Micro Devices, Inc. | ||
+ | Platform Version OpenCL 2.1 AMD-APP (3004.6) | ||
+ | Platform Profile FULL_PROFILE | ||
+ | Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices | ||
+ | Platform Host timer resolution 1ns | ||
+ | Platform Extensions function suffix AMD | ||
+ | |||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Number of devices 1 | ||
+ | Device Name gfx804 | ||
+ | Device Vendor Advanced Micro Devices, Inc. | ||
+ | Device Vendor ID 0x1002 | ||
+ | Device Version OpenCL 1.2 AMD-APP (3004.6) | ||
+ | Driver Version 3004.6 | ||
+ | Device OpenCL C Version OpenCL C 1.2 | ||
+ | Device Type GPU | ||
+ | Device Board Name (AMD) Radeon RX550/550 Series | ||
+ | Device Topology (AMD) PCI-E, 0a:00.0 | ||
+ | Device Profile FULL_PROFILE | ||
+ | Device Available Yes | ||
+ | Compiler Available Yes | ||
+ | Linker Available Yes | ||
+ | Max compute units 8 | ||
+ | SIMD per compute unit (AMD) 4 | ||
+ | SIMD width (AMD) 16 | ||
+ | SIMD instruction width (AMD) 1 | ||
+ | Max clock frequency 1206MHz | ||
+ | Graphics IP (AMD) 8.0 | ||
+ | Device Partition (core) | ||
+ | Max number of sub-devices 8 | ||
+ | Supported partition types None | ||
+ | Supported affinity domains (n/a) | ||
+ | Max work item dimensions 3 | ||
+ | Max work item sizes 1024x1024x1024 | ||
+ | Max work group size 256 | ||
+ | Preferred work group size (AMD) 256 | ||
+ | Max work group size (AMD) 1024 | ||
+ | Preferred work group size multiple 64 | ||
+ | Wavefront width (AMD) 64 | ||
+ | Preferred / native vector sizes | ||
+ | char 4 / 4 | ||
+ | short 2 / 2 | ||
+ | int 1 / 1 | ||
+ | long 1 / 1 | ||
+ | half 1 / 1 (cl_khr_fp16) | ||
+ | float 1 / 1 | ||
+ | double 1 / 1 (cl_khr_fp64) | ||
+ | Half-precision Floating-point support (cl_khr_fp16) | ||
+ | Denormals No | ||
+ | Infinity and NANs No | ||
+ | Round to nearest No | ||
+ | Round to zero No | ||
+ | Round to infinity No | ||
+ | IEEE754-2008 fused multiply-add No | ||
+ | Support is emulated in software No | ||
+ | Single-precision Floating-point support (core) | ||
+ | Denormals No | ||
+ | Infinity and NANs Yes | ||
+ | Round to nearest Yes | ||
+ | Round to zero Yes | ||
+ | Round to infinity Yes | ||
+ | IEEE754-2008 fused multiply-add Yes | ||
+ | Support is emulated in software No | ||
+ | Correctly-rounded divide and sqrt operations Yes | ||
+ | Double-precision Floating-point support (cl_khr_fp64) | ||
+ | Denormals Yes | ||
+ | Infinity and NANs Yes | ||
+ | Round to nearest Yes | ||
+ | Round to zero Yes | ||
+ | Round to infinity Yes | ||
+ | IEEE754-2008 fused multiply-add Yes | ||
+ | Support is emulated in software No | ||
+ | Address bits 64, Little-Endian | ||
+ | Global memory size 3816013824 (3.554GiB) | ||
+ | Global free memory (AMD) 3706992 (3.535GiB) | ||
+ | Global memory channels (AMD) 4 | ||
+ | Global memory banks per channel (AMD) 16 | ||
+ | Global memory bank width (AMD) 256 bytes | ||
+ | Error Correction support No | ||
+ | Max memory allocation 3054000332 (2.844GiB) | ||
+ | Unified memory for Host and Device No | ||
+ | Minimum alignment for any data type 128 bytes | ||
+ | Alignment of base address 2048 bits (256 bytes) | ||
+ | Global Memory cache type Read/Write | ||
+ | Global Memory cache size 16384 (16KiB) | ||
+ | Global Memory cache line size 64 bytes | ||
+ | Image support Yes | ||
+ | Max number of samplers per kernel 16 | ||
+ | Max size for 1D images from buffer 134217728 pixels | ||
+ | Max 1D or 2D image array size 2048 images | ||
+ | Base address alignment for 2D image buffers 256 bytes | ||
+ | Pitch alignment for 2D image buffers 256 pixels | ||
+ | Max 2D image size 16384x16384 pixels | ||
+ | Max 3D image size 2048x2048x2048 pixels | ||
+ | Max number of read image args 128 | ||
+ | Max number of write image args 8 | ||
+ | Local memory type Local | ||
+ | Local memory size 32768 (32KiB) | ||
+ | Local memory syze per CU (AMD) 65536 (64KiB) | ||
+ | Local memory banks (AMD) 32 | ||
+ | Max number of constant args 8 | ||
+ | Max constant buffer size 3054000332 (2.844GiB) | ||
+ | Preferred constant buffer size (AMD) 16384 (16KiB) | ||
+ | Max size of kernel argument 1024 | ||
+ | Queue properties | ||
+ | Out-of-order execution No | ||
+ | Profiling Yes | ||
+ | Prefer user sync for interop Yes | ||
+ | Profiling timer resolution 1ns | ||
+ | Profiling timer offset since Epoch (AMD) 1586590360034232392ns (Sat Apr 11 09:32:40 2020) | ||
+ | Execution capabilities | ||
+ | Run OpenCL kernels Yes | ||
+ | Run native kernels No | ||
+ | Thread trace supported (AMD) Yes | ||
+ | Number of async queues (AMD) 2 | ||
+ | Max real-time compute queues (AMD) 0 | ||
+ | Max real-time compute units (AMD) 0 | ||
+ | SPIR versions 1.2 | ||
+ | printf() buffer size 4194304 (4MiB) | ||
+ | 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 | ||
+ | |||
+ | NULL platform behavior | ||
+ | clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform | ||
+ | clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform | ||
+ | clCreateContext(NULL, ...) [default] No platform | ||
+ | clCreateContext(NULL, ...) [other] Success [AMD] | ||
+ | clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1) | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Device Name gfx804 | ||
+ | clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform | ||
+ | clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1) | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Device Name gfx804 | ||
+ | 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_ALL) Success (1) | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Device Name gfx804</code> | ||
+ | | ||
+ | ==== AMD RX 570 8GB DDR5 ==== | ||
+ | |||
+ | ma nouvelle carte graphique : | ||
+ | <code user>lspci -nnkd::0300</code> | ||
+ | <code>0a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] [1002:67df] (rev ef) | ||
+ | Subsystem: Sapphire Technology Limited Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] [1da2:e343] | ||
+ | Kernel driver in use: amdgpu | ||
+ | Kernel modules: amdgpu | ||
+ | </code> | ||
+ | |||
+ | son pilote classique | ||
+ | <code user>glxinfo -B</code> | ||
+ | <code>name of display: :0 | ||
+ | display: :0 screen: 0 | ||
+ | direct rendering: Yes | ||
+ | Extended renderer info (GLX_MESA_query_renderer): | ||
+ | Vendor: X.Org (0x1002) | ||
+ | Device: Radeon RX 570 Series (POLARIS10, DRM 3.36.0, 5.5.0-1-amd64, LLVM 9.0.1) (0x67df) | ||
+ | Version: 19.3.3 | ||
+ | Accelerated: yes | ||
+ | Video memory: 8192MB | ||
+ | Unified memory: no | ||
+ | Preferred profile: core (0x1) | ||
+ | Max core profile version: 4.5 | ||
+ | Max compat profile version: 4.5 | ||
+ | Max GLES1 profile version: 1.1 | ||
+ | Max GLES[23] profile version: 3.2 | ||
+ | Memory info (GL_ATI_meminfo): | ||
+ | VBO free memory - total: 7650 MB, largest block: 7650 MB | ||
+ | VBO free aux. memory - total: 8140 MB, largest block: 8140 MB | ||
+ | Texture free memory - total: 7650 MB, largest block: 7650 MB | ||
+ | Texture free aux. memory - total: 8140 MB, largest block: 8140 MB | ||
+ | Renderbuffer free memory - total: 7650 MB, largest block: 7650 MB | ||
+ | Renderbuffer free aux. memory - total: 8140 MB, largest block: 8140 MB | ||
+ | Memory info (GL_NVX_gpu_memory_info): | ||
+ | Dedicated video memory: 8192 MB | ||
+ | Total available memory: 16384 MB | ||
+ | Currently available dedicated video memory: 7650 MB | ||
+ | OpenGL vendor string: X.Org | ||
+ | OpenGL renderer string: Radeon RX 570 Series (POLARIS10, DRM 3.36.0, 5.5.0-1-amd64, LLVM 9.0.1) | ||
+ | OpenGL core profile version string: 4.5 (Core Profile) Mesa 19.3.3 | ||
+ | OpenGL core profile shading language version string: 4.50 | ||
+ | OpenGL core profile context flags: (none) | ||
+ | OpenGL core profile profile mask: core profile | ||
+ | |||
+ | OpenGL version string: 4.5 (Compatibility Profile) Mesa 19.3.3 | ||
+ | OpenGL shading language version string: 4.50 | ||
+ | OpenGL context flags: (none) | ||
+ | OpenGL profile mask: compatibility profile | ||
+ | |||
+ | OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.3.3 | ||
+ | OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20 | ||
+ | </code> | ||
+ | pilote open CL | ||
+ | <code user>clinfo</code> | ||
+ | <code>Number of platforms 1 | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Platform Vendor Advanced Micro Devices, Inc. | ||
+ | Platform Version OpenCL 2.1 AMD-APP (3004.6) | ||
+ | Platform Profile FULL_PROFILE | ||
+ | Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices | ||
+ | Platform Host timer resolution 1ns | ||
+ | Platform Extensions function suffix AMD | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Number of devices 1 | ||
+ | Device Name Ellesmere | ||
+ | Device Vendor Advanced Micro Devices, Inc. | ||
+ | Device Vendor ID 0x1002 | ||
+ | Device Version OpenCL 1.2 AMD-APP (3004.6) | ||
+ | Driver Version 3004.6 | ||
+ | Device OpenCL C Version OpenCL C 1.2 | ||
+ | Device Type GPU | ||
+ | Device Board Name (AMD) Radeon RX 570 Series | ||
+ | Device Topology (AMD) PCI-E, 0a:00.0 | ||
+ | Device Profile FULL_PROFILE | ||
+ | Device Available Yes | ||
+ | Compiler Available Yes | ||
+ | Linker Available Yes | ||
+ | Max compute units 32 | ||
+ | SIMD per compute unit (AMD) 4 | ||
+ | SIMD width (AMD) 16 | ||
+ | SIMD instruction width (AMD) 1 | ||
+ | Max clock frequency 1244MHz | ||
+ | Graphics IP (AMD) 8.0 | ||
+ | Device Partition (core) | ||
+ | Max number of sub-devices 32 | ||
+ | Supported partition types None | ||
+ | Supported affinity domains (n/a) | ||
+ | Max work item dimensions 3 | ||
+ | Max work item sizes 1024x1024x1024 | ||
+ | Max work group size 256 | ||
+ | Preferred work group size (AMD) 256 | ||
+ | Max work group size (AMD) 1024 | ||
+ | Preferred work group size multiple 64 | ||
+ | Wavefront width (AMD) 64 | ||
+ | Preferred / native vector sizes | ||
+ | char 4 / 4 | ||
+ | short 2 / 2 | ||
+ | int 1 / 1 | ||
+ | long 1 / 1 | ||
+ | half 1 / 1 (cl_khr_fp16) | ||
+ | float 1 / 1 | ||
+ | double 1 / 1 (cl_khr_fp64) | ||
+ | Half-precision Floating-point support (cl_khr_fp16) | ||
+ | Denormals No | ||
+ | Infinity and NANs No | ||
+ | Round to nearest No | ||
+ | Round to zero No | ||
+ | Round to infinity No | ||
+ | IEEE754-2008 fused multiply-add No | ||
+ | Support is emulated in software No | ||
+ | Single-precision Floating-point support (core) | ||
+ | Denormals No | ||
+ | Infinity and NANs Yes | ||
+ | Round to nearest Yes | ||
+ | Round to zero Yes | ||
+ | Round to infinity Yes | ||
+ | IEEE754-2008 fused multiply-add Yes | ||
+ | Support is emulated in software No | ||
+ | Correctly-rounded divide and sqrt operations Yes | ||
+ | Double-precision Floating-point support (cl_khr_fp64) | ||
+ | Denormals Yes | ||
+ | Infinity and NANs Yes | ||
+ | Round to nearest Yes | ||
+ | Round to zero Yes | ||
+ | Round to infinity Yes | ||
+ | IEEE754-2008 fused multiply-add Yes | ||
+ | Support is emulated in software No | ||
+ | Address bits 64, Little-Endian | ||
+ | Global memory size 8016703488 (7.466GiB) | ||
+ | Global free memory (AMD) 7809228 (7.447GiB) | ||
+ | Global memory channels (AMD) 8 | ||
+ | Global memory banks per channel (AMD) 16 | ||
+ | Global memory bank width (AMD) 256 bytes | ||
+ | Error Correction support No | ||
+ | Max memory allocation 4244635648 (3.953GiB) | ||
+ | Unified memory for Host and Device No | ||
+ | Minimum alignment for any data type 128 bytes | ||
+ | Alignment of base address 2048 bits (256 bytes) | ||
+ | Global Memory cache type Read/Write | ||
+ | Global Memory cache size 16384 (16KiB) | ||
+ | Global Memory cache line size 64 bytes | ||
+ | Image support Yes | ||
+ | Max number of samplers per kernel 16 | ||
+ | Max size for 1D images from buffer 134217728 pixels | ||
+ | Max 1D or 2D image array size 2048 images | ||
+ | Base address alignment for 2D image buffers 256 bytes | ||
+ | Pitch alignment for 2D image buffers 256 pixels | ||
+ | Max 2D image size 16384x16384 pixels | ||
+ | Max 3D image size 2048x2048x2048 pixels | ||
+ | Max number of read image args 128 | ||
+ | Max number of write image args 8 | ||
+ | Local memory type Local | ||
+ | Local memory size 32768 (32KiB) | ||
+ | Local memory syze per CU (AMD) 65536 (64KiB) | ||
+ | Local memory banks (AMD) 32 | ||
+ | Max number of constant args 8 | ||
+ | Max constant buffer size 4244635648 (3.953GiB) | ||
+ | Preferred constant buffer size (AMD) 16384 (16KiB) | ||
+ | Max size of kernel argument 1024 | ||
+ | Queue properties | ||
+ | Out-of-order execution No | ||
+ | Profiling Yes | ||
+ | Prefer user sync for interop Yes | ||
+ | Profiling timer resolution 1ns | ||
+ | Profiling timer offset since Epoch (AMD) 1587542527048143648ns (Wed Apr 22 10:02:07 2020) | ||
+ | Execution capabilities | ||
+ | Run OpenCL kernels Yes | ||
+ | Run native kernels No | ||
+ | Thread trace supported (AMD) Yes | ||
+ | Number of async queues (AMD) 2 | ||
+ | Max real-time compute queues (AMD) 0 | ||
+ | Max real-time compute units (AMD) 575513232 | ||
+ | SPIR versions 1.2 | ||
+ | printf() buffer size 4194304 (4MiB) | ||
+ | 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 | ||
+ | NULL platform behavior | ||
+ | clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform | ||
+ | clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform | ||
+ | clCreateContext(NULL, ...) [default] No platform | ||
+ | clCreateContext(NULL, ...) [other] Success [AMD] | ||
+ | clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1) | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Device Name Ellesmere | ||
+ | clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform | ||
+ | clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1) | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Device Name Ellesmere | ||
+ | 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_ALL) Success (1) | ||
+ | Platform Name AMD Accelerated Parallel Processing | ||
+ | Device Name Ellesmere | ||
+ | </code> |