Stephane JOLY

GNU/Linux Home Pages

Articles marqués du mot clé « gpgpu »


J'ai souhaité activé OpenCl avec un GPU Nvidia pour accélérer le fonctionnement des logiciels Darktable et gimp dev, cependant, cela n'est pas si simple quand on ne sait pas comment faire !

Pour ma part, j'utilise le pilote propriétaire pour cette carte :
VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 760] (rev a1)

Il faut juste installer et activer OpenCL et quelques autres outils  :

# pacman -S opencl-nvidia libclc ocl-icd

Après redémarrage de xorg, rien ne semble avoir changé

$ ls -l /dev/nvidia*

crw-rw-rw- 1 root root 195,   0  4 févr. 14:15 /dev/nvidia0
crw-rw-rw- 1 root root 195, 255  4 févr. 14:15 /dev/nvidiactl
crw-rw-rw- 1 root root 195, 254  4 févr. 14:15 /dev/nvidia-modeset


Et pourtant, si vous lancer Darktable dans un terminal :

$ darktable -d opencl


Le résultat suivant devrait apparaître :

[opencl_init] opencl related configuration options:
[opencl_init]
[opencl_init] opencl: 1
[opencl_init] opencl_library: ''
[opencl_init] opencl_memory_requirement: 768
[opencl_init] opencl_memory_headroom: 300
[opencl_init] opencl_device_priority: '*/!0,*/*/*'
[opencl_init] opencl_mandatory_timeout: 200
[opencl_init] opencl_size_roundup: 16
[opencl_init] opencl_async_pixelpipe: 0
[opencl_init] opencl_synch_cache: 0
[opencl_init] opencl_number_event_handles: 25
[opencl_init] opencl_micro_nap: 1000
[opencl_init] opencl_use_pinned_memory: 0
[opencl_init] opencl_use_cpu_devices: 0
[opencl_init] opencl_avoid_atomics: 0
[opencl_init]
[opencl_init] found opencl runtime library 'libOpenCL'
[opencl_init] opencl library 'libOpenCL' found on your system and loaded
[opencl_init] found 1 platform
[opencl_init] found 1 device
[opencl_init] device 0 `GeForce GTX 760' has sm_20 support.
[opencl_init] device 0 `GeForce GTX 760' supports image sizes of 16384 x 16384
[opencl_init] device 0 `GeForce GTX 760' allows GPU memory allocations of up to 499MB
[opencl_init] device 0: GeForce GTX 760



Deux nouveaux fichiers spéciaux (device) ont étés crées lorsque vous aurez lancé Gimp ou Darktable avec OpenCl d'activé :

$ ls -l /dev/nvidia*


crw-rw-rw- 1 root root 195,   0  4 févr. 14:15 /dev/nvidia0
crw-rw-rw- 1 root root 195, 255  4 févr. 14:15 /dev/nvidiactl
crw-rw-rw- 1 root root 195, 254  4 févr. 14:15 /dev/nvidia-modeset
crw-rw-rw- 1 root root 242,   0  4 févr. 14:16 /dev/nvidia-uvm
crw-rw-rw- 1 root root 242,   1  4 févr. 14:16 /dev/nvidia-uvm-tools


En fait, les applications ayant recourt à OpenCl chargent le module nvidia-uvm qui crée ces fichiers spéciaux.

Après quelques tests, cela accélère considérablement mes deux logiciels préférés sur certains calculs ! :)

Voilà, j'espère que cela aura permis de solutionner votre problème !

Aucun commentaire