Faire fonctionner OpenCL ( Open Computing Language GPGPU ) avec Manjaro Linux et Nvidia ( Utile pour Darktable et Gimp 2.9 ou supérieur )
04 février 2018
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 !
Connaître sa version installée de php avec Debian
29 octobre 2017
Lire la suite de Connaître sa version installée de php avec Debian
Voir le nombre de photos réalisées avec un appareil photo (Nikon) depuis un système Linux
07 octobre 2017
Pour cela, il suffit d'utiliser l'outil exiftool, vous le trouverez sur toutes les distributions Linux.
Pour cela, prendre une photo avec votre boîtier, importer ce fichier sur votre système de fichier Linux. Le champ a récupérer est Shutter Count (compteur de shoot), lancer tout simplement la commande exiftool dans un pipe suivi de grep :
$ exiftool DSC_2413.NEF|grep "Shutter Count"
Shutter Count : 33315
Voilà, c'est tout simple est c'est bien pratique !
J'avais des problèmes pour mettre à jour mes matériels photos Nikon (Boîtiers D810 et D7000), car je n'utilise ni Ms-Windows et ni Mac-OS. Malheureusement, Nikon a eu la mauvaise idée de donner les fichiers de mise à jour de ses produits uniquement pour ces deux systèmes (Mac et Windows), du coups il m'est quasi impossible d'obtenir les firmawares pour mon matériel. J'avais donné une solution sur un de mes précédent posts, en utilisant WineHq, mais il y a bien plus simple pour arriver à ses fins ! En fait, je viens de me rendre compte, que les fichiers exe fournis par Nikon pour Ms-Windows ne sont rien d'autre que des fichiers type archive au format "rar" autoextractibles. Il suffit d'extraire les fichiers binaires des exécutables ^^ .
Par exemple pour les derniers binaires de correction de distorsion des boîtiers Nikon D500 en version 1.20
$ unrar x F-D500-V120W.exe
UNRAR 5.90 freeware Copyright (c) 1993-2020 Alexander Roshal
Extracting from F-D500-V120W.exe
;The comment below contains SFX script commands
;TempMode
;Setup=InstallerWelcome.exe
Overwrite=1
Silent=1
Creating D500Update OK
Extracting D500Update/D500_0120.bin OK
All OK
$ ls -la D500Update/
total 25952
drwxr-xr-x 2 melsiar melsiar 4096 5 avril 2019 .
drwxr-xr-x 3 melsiar melsiar 4096 26 avril 09:56 ..
-rw-r--r-- 1 melsiar melsiar 26563911 29 mars 2019 D500_0120.bin
Si vous souhaitez vérifier l'intégrité du fichier avant de mettre votre boîtier à jour (de préférence à vérifier sur la carte mémoire) :
$ sha256sum D500Update/D500_0120.bin
0bddb4e16f8937ff60465e8b71429e9813fff61273c49bb0eeb5d2f40335072c D500Update/D500_0120.bin
Démontez la carte mémoire de l'ordinateur et placez là dans le logement de votre appareil photo.
Vérifier bien cette valeur avant de passer à la suite, vous serez prévenu, votre batterie doit être pleinement chargée !
Sélectionnez Version du firmware dans le MENU CONFIGURATION et suivez les instructions à l'écran pour effectuer la mise à jour du firmware.
Pendant la phase de mise à jour, ne pas éteindre votre appareil photo.
Une fois la mise à jour effectuée, mettez l'appareil photo hors tension et retirez la carte mémoire.
Vérifiez que le firmware a été mis à jour vers la nouvelle version.
J'espère que cela vous sera utile.
Bien à vous.
Java Oracle avec Debian Jessie
30 janvier 2016
Java Oracle avec Debian Jessie
Il y a plusieurs versions de Java dans Debian Jessie, je vais vous expliquer comment installer la version d'Oracle proprement.
La première chose à faire est de télécharger le dernier JDK :
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Cliquez sur "Download JDK", au moment où j'écris cet article, je suis tombé sur la version :
Java SE Development Kit 8u71
Validez le contrat (Accept License Agreement). Prenez la version tarball (tar.gz) linux x64 si vous êtes sur une plateforme logiciel de Debian Jessy 64 bits intel et évidemment, la version 32 bits pour les autres plateformes.
Ensuite, depuis le compte root, installez java-common :
# aptitude install java-package
Répondez par défaut.
Maintenant nous allons créer le paquet deb avec la tarball fraîchement téléchargé (Pas besoin d'être administrateur):
$ make-jpkg <downloaded tarball>
Dans mon cas cela donne :
$ make-jpkg ~/Téléchargements/jdk-8u71-linux-x64.tar.gz
Répondez défaut par Oui (Yes), pour cela il suffit de faire deux fois sur <Entrée>.
On obtient un paquet deb :
$ ls
oracle-java8-jdk_8u71_amd64.deb
Ensuite, on installe ce paquet avec le compte root :
# dpkg -i oracle-java8-jdk_8u71_amd64.deb
Ouvrez un nouveau terminal pour vérifier votre jre/jdk :
$ java -version
java version "1.7.0_95"
OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-1~deb8u1)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)
Cette commande permet de choisir la meilleure version de java automatiquement, dans ce cas, Debian choisi la version Open :
# update-alternatives --auto java
Cette commande vous donne les versions de java installées, ainsi que leur chemin et leurs degrés de priorités :
# update-alternatives --display java
On voit que la version Oracle n'est pas utilisée, pour choisir cette dernière :
# update-alternatives --config java
Il existe 2 choix pour l'alternative java (qui fournit /usr/bin/java).
Sélection Chemin Priorité État
------------------------------------------------------------
* 0 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 mode automatique
1 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 mode manuel
2 /usr/lib/jvm/jdk-8-oracle-x64/jre/bin/java 318 mode manuel
Appuyez sur <Entrée> pour conserver la valeur par défaut[*] ou choisissez le numéro sélectionné :
Pour choisir la version d'Oracle, entrez 2 et Appuyez sur <Entrée>.
Maintenant vous devriez avoir la version d'Oracle de Java :
$ java -version
java version "1.8.0_71"
Java(TM) SE Runtime Environment (build 1.8.0_71-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.71-b15, mixed mode)
Bien sûr, vous pouvez si vous le souhaitez, choisir une autre version de java, pour cela utilisez cette dernière commande.
J'espère que cette documentation vous sera utile.