Recommended Posts

Salut à tous,

 

le post sur BlurXT m'a interpellé sur l'utilisation de CUDA avec Pix pour les possesseurs de cartes Nvidia.

J'avais vu dans le options de Pix que ce serait possible dans le futur donc je n'avais pas creusé davantage.

Ce que j'ai fait aujourd'hui ;)

 

Je me suis servi de ce tuto pour installer CUDA : https://www.williamliphotos.com/starnet-cuda

Tous les fichiers peuvent être téléchargé ici : https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html

Dans le tuto, il manque les instructions d'installation de zlib. Ce n'est pas compliqué à faire mais il ne faut pas oublier.

Apparemment ça marche avec CUDA 11.8, pas avec la 12

 

A l'origine c'est pour Starnet 2 mais j'ai testé avec BlurXT et le résultat est bluffant (il est vrai que j'ai une RTX3090)

J'ai juste fait deux tests (un avec Starnet et un avec BlurXT) mais on peut dire que la différence est significative...

Sur une image linéaire de 60 Mpixels (IMX455), Starnet sans CUDA prend un peu moins 8 minutes avec CUDA ça ne prend plus que 32 seconde !!!

Et avec BlurXT je suis passé de 12.5 minutes à 31" O.o

 

Ca montre que le CPU n'est vraiment pas optimisé pour ce genre de calculs, je ne sais pas pour ce qui est d'Intel, mon CPU est un AMD Ryzen 3950X.

 

En espérant que ça puisse servir...

 

Amicalement,

 

Alexandre

 

image.png

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites
Advertising
By registering on Astrosurf,
this type of ad will no longer be displayed.
Planetary Astronomy
Observing, imaging and studying the planets
A comprehensive book about observing, imaging, and studying planets. It has been written by seven authors, all being skillful amateur observers in their respective domains.
More information on www.planetary-astronomy.com

il y a 10 minutes, Alexandre_Itic a dit :

l'utilisation de CUDA

"Laissez toute espérance, vous qui entrez"... :) cuda c'est parfois l'enfer quoi ;)

 

Share this post


Link to post
Share on other sites

@Alexandre_Itic Merci pour l'info !

Effectivement, la v12 de CUDA ne fonctionne pas pour ces applications. Tout ce que j'ai fait en suivant le tuto n'a pas été perdu, la simple installation de la v11.8 après la v12 remet tout dans l'ordre simplement.

Résultat des courses, un temps d'exécution divisé par 5 pour BlurXT (5'28" puis 1'04), un Starnet2 en 42", StarXT en 1'21" au lieu de 15' avant..!

On voit bien le GPU qui fonctionne à 100% avec CUDA au lieu de 2% avant en ce qui me concerne.

 

63ceac3c04f96_Capturedcran2023-01-23163801.thumb.jpg.c6f5d344544cf86983b9fa2a269da1e2.jpg

Share this post


Link to post
Share on other sites

J'ai échoué il y un mois, je vais retenter avec tes versions... merci

Mais peux tu s'il te plait préciser toutes les versions utilisées ?

 

Edited by Chris277

Share this post


Link to post
Share on other sites

J'ai installé :

cuda_11.8.0_522.06_windows : https://developer.nvidia.com/cuda-11-8-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_local

Par les liens du tuto Starnet :

libtensorflow-gpu-windows-x86_64-2.7.0

cudnn-11.4-windows-x64-v8.2.4.15

Bien suivre les instructions du tuto, je me suis pris les pieds dans le tapis à la dernière étape, tensorflow.lib pas copié/collé correctement.. :)

  • Thanks 1

Share this post


Link to post
Share on other sites
Le 21/01/2023 à 14:52, Alexandre_Itic a dit :

Ca montre que le CPU n'est vraiment pas optimisé pour ce genre de calculs, je ne sais pas pour ce qui est d'Intel, mon CPU est un AMD Ryzen 3950X

 

Ce n'est pas tant que les CPU ne sont pas optimisés pour cela, mais plutôt que ces processeurs de calculs massivement parallèles sont très bien optimisés pour ce genre de calculs et les fonctions de traitements sont repensées pour cela ! On a pu faire (pour un projet de recherche dans ma boite) des tests entre une Jetson nano (carte de calcul Nvidia à ~$100) et un gros i7 gen 10 (ou 9 je ne sais plus) donc une machine >1000€ sur des algos utilisés en reconnaissance ... là encore c'est sans appel ... 2 ou 3 fps pour la Jetson (sans forcer ni rechercher à optimiser), contre 0,3~0.5 fps pour le CPU ! Et c'est la solution GPU de très loin la moins chère.

Par contre dès que ce n'est plus parallélisable, cela devient une grosse daube et le CPU repasse (largement) devant ! Normal, sinon cela ferait des décennies  que tout le monde aurait troqué son CPU pour un GPU seul !

(j'avais utilisé le blitter de mon atari st dans les années 80 pour lui faire faire quelques traitements basiques, l'aube des processeurs graphiques quoi)

 

Mais n'empêche que c'est bien qu'un fournisseur de logiciel se penche sur l'utilisation du GPU pour faire des traitements. Par contre, je ne sais pas si aujourd'hui les traitements "planétaires" lourds seraient GPU'ready !

 

 

Marc

Share this post


Link to post
Share on other sites

Hello :)

Merci pour l'info.

J'ai testé hier soir, je suis toujours à 0% GPU mais ca va beaucoup plus vite :D:D (pas plus de 30sec avec BXT, SXT, ou Starnet sur une image de 26MP). 

@Alexandre_Itic il faut l'installer où zlib stp ?

 

Edited by GuillaumeGZ

Share this post


Link to post
Share on other sites

@GuillaumeGZ

J'ai trouvé ailleurs, dans /bin de cuda :

https://forums.developer.nvidia.com/t/where-to-install-zlib-and-cudnn-files/211440/3

Ma carte graphique étant une GTX950m, la différence n'est pas énorme. 2'03 au lieu de 3'02 sur une image de canon 6D.

Par contre c'est toujours 0% gpu. Sauf que on voit la mémoire graphique se remplir et en mettant compute_0 au lieu de 3D, on voit une activité à 98% que windows ne voit pas au bilan.

30% de temps gagné tout de même

Dans mes souvenirs quand un .exe, a besoin d'une dll, c'était soit dans le dossier du programme, soit dans /system de windows pour qu'il le trouve.

Edited by Chris277
  • Thanks 1

Share this post


Link to post
Share on other sites

J'ai pour ma part bien installé zlib (ça ne marchait pas sans ça, Pixinsight plantait), la mémoire du processeur graphique se load bien mais le travail se fait 75-80% le CPU et 15-20% le GPU... C'est où que j'ai merdoillié ?

Share this post


Link to post
Share on other sites
Il y a 12 heures, Looney2 a dit :

'ai pour ma part bien installé zlib (ça ne marchait pas sans ça, Pixinsight plantait), la mémoire du processeur graphique se load bien mais le travail se fait 75-80% le CPU et 15-20% le GPU... C'est où que j'ai merdoillié ?

J'ai ça pour ma part. On peut douter aussi, même si j'ai gagné 33%. J'ai 640 coeurs CUDA sur ma carte. C'est pas beaucoup

 

image.png.295112d106338ce8646a66f4ab38ca0f.png

Edited by Chris277

Share this post


Link to post
Share on other sites

@Looney2, finalement, c'est un peu comme toi. J'ai  le CPU à 63% au lieu de 98% et le GPU compute_0 à 98% et je gagne 33% de temps environ.

Share this post


Link to post
Share on other sites
Le 25/01/2023 à 14:27, Chris277 a dit :

J'ai ça pour ma part. On peut douter aussi, même si j'ai gagné 33%.

 

regardes bien, ton GPU nvidia est à zéro, donc faut revoir l'installation

Share this post


Link to post
Share on other sites

Hello, merci pour ce post. J'ai essayé d'installer selon les procédures du 1er poste. Pour ma part, cela ne fonctionne pas. 

A noter, lors de l'installation de CUDA, il y avait ces infos dans la fenetre : 

 

Installation CUDA

 

Installed:

     - Nsight Monitor

Not Installed:

     - Nsight for Visual Studio 2022

       Reason: VS2022 was not found

     - Nsight for Visual Studio 2019

       Reason: VS2019 was not found

     - Nsight for Visual Studio 2017

       Reason: VS2017 was not found

     - Integrated Graphics Frame Debugger and Profiler

       Reason: see https://developer.nvidia.com/nsight-vstools

     - Integrated CUDA Profilers

       Reason: see https://developer.nvidia.com/nsight-vstools

 

Je ne sais pas si cela a une conséquence ??? 

 

PS : j'ai bien rajouter l'étape pour le fichier ZLIB, à savoir : fichier .zip extrait avec les dossier dll_x64 et static_x64.

J'ai ajouté, dans la variable système PATH le chemin du dossier où se trouve le fichier zlibwapi.dll. C'est tout ? 

 

 

Pour info : 

 - Windows 11

 - GTX 3080

 - cudnn-11.4-windows-x64-v8.2.4.15

 - libtensorflow-gpu-windows-x86_64-2.7.0

 - zlib123dllx64

 - cuda_11.8.0_522.06_windows

Edited by -Amenophis-

Share this post


Link to post
Share on other sites

Problème résolu.

A l'étape 4. Final Files: cudnn, il manque quelques précisions écrite. J'ai tout simplement suivi les images avec les flèches.

J'ai également installé la version 11.7 à la place de la version 11.8

Merci beaucoup :)

 

Edited by -Amenophis-

Share this post


Link to post
Share on other sites
Il y a 17 heures, la louche du Nord a dit :

regardes bien, ton GPU nvidia est à zéro, donc faut revoir l'installation

J'ai tout désinstallé et réinstallé chez Nividia. Et ça ne change pas grand chose sauf que je gagne quand même presque 1 minute. Et pour le reste rien n'est moins sure :

https://answers.microsoft.com/en-us/windows/forum/all/cuda-not-under-task-manager/3a3c8707-da7c-4c77-895b-c5e16223f343

Share this post


Link to post
Share on other sites

@Alexandre_Itic ; @-Amenophis- ; @la louche du Nord ; @Jean-Marc_M ; @Looney2 ; @GuillaumeGZ ; @LucaR

Et voila RT du fofo de Pix, a raison, je viens d'installer sur ma vieille GTX950m les versions (récentes) qu'il préconise. avec la procédure simplifié du premier tuto de 2020 cité dans son post. William fait trop de truc inutiles. Avant j'ai tout désinstallé Nvidia, effacé les variables d'environnement et rebouté. Et ben 10 s de gagnées 1m55 au lieu de 2m05 en tensorflow_gpu_2.7.0 et 3m05 en CPU. Alors :

 

https://pixinsight.com/forum/index.php?threads/no-luck-with-starnet-on-rtx-3070.15585/post-120434

 

Et toujours 0 % GPU global mais Compute_0 du GPU à 98% à chercher dans les options d'affichage.

Donc, avec mon matos, (win10 pro 64b + gtx950m) on ne voit pas l'activité cuda qui doit être dans compute_0.

 

Edit : 2ème essai, 1m44s, waouh, au lieu de 3m05 en CPU

Edited by Chris277
Version plus performante

Share this post


Link to post
Share on other sites

Hello @Chris277

J'ai refait les procédures plusieurs fois, je ne vois pas CUDA dans le task manager, j'ai une GTX980. Elle doit être trop vieille.

Par contre, j'ai énormément réduit le temps de traitement avec BXT, Starnet etc et c'est le principal (40sec max sur une image de 26MP).

A+

Guillaume

  • Like 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now