Stephane JOLY

GNU/Linux Home Pages


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


Lire la suite de Connaître sa version installée de php avec Debian

Aucun commentaire


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 !

Aucun commentaire

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.

Aucun commentaire

Java Oracle avec Debian Jessie

30 janvier 2016

Tatane


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.

Aucun commentaire