Le Forum de l'Alliance Francophone

Nouvelles:

  • Projet du Mois FB: Primegrid

Auteur Sujet: Architectures GPU  (Lu 2940 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
le: 20 January 2024 à 14:49
Salut à tous,  :hello:

J'ai fait un topo sur les architectures des GPU, pour voir les différences de conception entre chaque marque et architecture.



En attente de question  :kookoo:
« Modifié: 20 January 2024 à 14:53 par TRINITAS »

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne JeromeC

  • CàA
  • Boinc'eur devant l'éternel
  • *****
  • Messages: 31363
  •   
Réponse #1 le: 20 January 2024 à 19:28
C'est très joli.

Je ne sais pas du tout à quoi ça sert et ce qu'on peut faire avec et s'il y a des conclusions à en tirer par rapport à boinc, mais c'est très joli :siflotte:

Sinon t'as pas l'air d'un nouveau mais je ne me souviens plus du tout de ton pseudo et la dernière fois que t'avais posté c'était en juillet 2020 : t'as changé de pseudo ? t'es qui ? :kookoo:

A quoi bon prendre la vie au sérieux, puisque de toute façon nous n’en sortirons pas vivants ? (Alphonse Allais)



Hors ligne Oncle Bob

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 5349
  •   
Réponse #2 le: 20 January 2024 à 23:38
Gael91.

Merci pour les tableaux :)

Boincstat
Projets du moment
Config principale : i7 2600K@4,2 GHz / 32 Go@1333 MHz / GTX 970 (Win 10)
Crunchbox passives : i7-4785T / 8 Go@1600 MHz / Akasa Euler S (Debian) || i3-4130T / 4 Go@1600 MHz / Akasa Euler (Debian)
ARM : 1*S922 + 1*H3
Boinc@Raspberry Pi | Boinc et Linux | Date fin de projets


Hors ligne [AF>Amis des Lapins] Jean-Luc

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 3433
  •   
    • Le calcul partagé en atsronomie sous BOINC
    • E-mail
Réponse #3 le: 21 January 2024 à 09:18
Si, si, ça peut servir pour BOINC.
Mais à mon humble avis, il faudrait rajouter les puissances de calcul en TFlops pour chaque GPU.
Cela donne une idée du nombre de points que l'on peut obtenir en une journée (RAC).

J'attends avec impatience la 4080 Ti.



Rédacteur d'un article sur BOINC, adresse :
http://www.astrocaw.eu/?p=605
Créateur d'un site actif de recherche sur les suites aliquotes :
http://www.aliquotes.com/


Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #4 le: 21 January 2024 à 10:54
C'est très joli.

Je ne sais pas du tout à quoi ça sert et ce qu'on peut faire avec et s'il y a des conclusions à en tirer par rapport à boinc, mais c'est très joli :siflotte:

Sinon t'as pas l'air d'un nouveau mais je ne me souviens plus du tout de ton pseudo et la dernière fois que t'avais posté c'était en juillet 2020 : t'as changé de pseudo ? t'es qui ? :kookoo:

Je ne suis pas nouveau en effet, Gael91 était mon ancien pseudo, mais j'ai mit TRINITAS vu que c'est celui que je met dans tous les projets.

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #5 le: 21 January 2024 à 11:29
Si, si, ça peut servir pour BOINC.
Mais à mon humble avis, il faudrait rajouter les puissances de calcul en TFlops pour chaque GPU.
Cela donne une idée du nombre de points que l'on peut obtenir en une journée (RAC).

J'attends avec impatience la 4080 Ti.

La puissance de calcul en TFLOPs ne traduit pas la puissance réelle du GPU. Il faut d'abord savoir de quelle manière un projet (et ses applications associées) exploite le GPU. Car il existe plusieurs instructions exploitables qui ont des taux d'utilisations différentes. Un GPU n'est jamais exploité à 100% (Jamais se fier aux graphiques d'utilisation d'un soft de contrôle).

Des projets utilisent le FP32 par exemple (Calcul de nombre décimaux à 32-bits) ou encore le FP64, mais aussi le INT32 (Nombre entiers).

Ce tableau que j'ai présenté vous donne justement l'agencement des cores de chaque architectures.

Explication: Chez NVIDIA, un GPU se compose de plusieurs cores (Analogues aux CPU) qui sont les SM. Chaque SM contient 4 petites partitions qui abritent les unités de calculs vectorielles (Cela veut dire qu'elles font plusieurs instructions par cycle) qu'on appelle des ALU (Unités de calculs arithmétiques). Ces ALU sont organisés par groupes SIMD (Single Instruction for Multiple Data). Un SIMD a une largeur variable selon les GPU et architectures (Et l'objectif recherché).

Pour le cas de nos GPU actuels de chez NVIDIA: Nvidia a mit en place des SIMD16, c'est à dire un bloc vectoriel de 16 ALU. Chaque SM dispose au total de 128 ALU, et la AD102 (Puce anime la RTX 4090) dispose de 144 SM au total (Bien que 128 activés pour la RTX) pour un total de 18432 ALU (Qu'on appelle aussi Shaders pour les gamers).

Attention aussi, et c'est un détail très important: le tableau montre que les RTX n'ont pas des SIMD à instructions universelles. Des blocs SIMD16 font du FP32 uniquement, et d'autres font du FP32 et INT32. Cela veut dire quoi?

Cela veut dire que la puissance théorique ne montera pas la puissance réelle du GPU. Il est logique en effet qu'un test de débit FP32 va employer les partitions en totalité. Mais une situation réelle n'est pas comme ça.

Prenons le cas de la 3D: une scène 3D fait intervenir divers composants, aussi bien décimaux qu'entiers. Donc à ce stade, il va y avoir un débit aléatoire, du fait que du FP32 et/ou FP32 + INT32 seront employés: Si du INT32 intervient, la partition en question ne pourra pas utiliser du FP32, ce qui diminuera la puissance par 2.

Pour BOINC: si un projet demande que du INT32, alors la puissance réelle ne sera que de moitié de la théorique. Si le FP32 intervient, on peut espérer une exploitation complète, mais à condition que l'application soit bien optimisée pour exploiter les partitions SIMD16 correctement: c'est à dire être capable de bien les alimenter en threads et instructions. Sinon (et on le constate parfois) on aura un GPU mal exploité.

Prenons exemple de la RTX 4090: Elle dispose de 128 SM pour 16384 ALU au total activé. Sa fréquence maximale est de 2520 MHz. Son fonctionnement est régit de cette manière:

==>Soit 82.57 TFLOPs FP32 (Ses 2 partitions exploitées), soit 41.28 TFLOPs FP32 ET 41.28 TIOPs INT32

Le choix de NVIDIA d'organiser ses ALU de cette manière permet de mieux exploiter au max le FP32 et INT32 sans subir les débits extrêmement aléatoires qu'on avait à l'époque des anciennes GeForce (C'est à dire des GeForce 400 à 1000) où chaque ALU individuel intégrait une unité FP et une unité INT: Plus simple de conception, mais plus difficile à exploiter. Le choix de séparer le tout a été fait avec la GV100 (GeForce TITAN V ), puis les RTX 2000.

PS: A Savoir que chez les RTX 2000: la 2é partition ne faisait que du INT32. l'intégration de la 2é instruction s'est fait avec les RTX 3000.

En résumé:

==>RTX 2080 Ti: 68 SM - 8704 ALU (Dont 4352 FP32 + 4352 INT32) à 1545 MHz ==> 13.44 TFLOPs FP32 ET 13.44 TIOPs INT32
==>RTX 3090 Ti: 84 SM - 10752 ALU (Dont 5376 FP32 + 5376 FP32/INT32) à 1860 MHz ==> 40.00 TFLOPs FP32 ou 20.00 TFLOPs FP32 ET 20.00 TIOPs INT32
==>RTX 4090: 128 SM - 16384 ALU (Dont 8192 FP32 + 8192 FP32/INT32) à 2520 MHz ==> 82.57 TFLOPs FP32 ou 42.28 TFLOPs FP32 ET 42.28 TIOPs INT32

Vous suivez?  :) :)
« Modifié: 21 January 2024 à 11:31 par TRINITAS »

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne [AF>Amis des Lapins] Jean-Luc

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 3433
  •   
    • Le calcul partagé en atsronomie sous BOINC
    • E-mail
Réponse #6 le: 21 January 2024 à 13:01
WAOUH !
Merci à toi !
Super intéressant, même si je vais devoir lire cela plusieurs fois pour bien piger, effort que je ferai étant donné mon grand intérêt pour le sujet.

Mais si j'ai ça, comme tu le dis (en bleu et rouge pour le données que j'ai sélectionnées dans ma formule ci-dessous) :
==>RTX 2080 Ti: 68 SM - 8704 ALU (Dont 4352 FP32 + 4352 INT32) à 1545 MHz ==> 13.44 TFLOPs FP32 ET 13.44 TIOPs INT32
==>RTX 3090 Ti: 84 SM - 10752 ALU (Dont 5376 FP32 + 5376 FP32/INT32) à 1860 MHz ==> 40.00 TFLOPs FP32 ou 20.00 TFLOPs FP32 ET 20.00 TIOPs INT32
==>RTX 4090: 128 SM - 16384 ALU (Dont 8192 FP32 + 8192 FP32/INT32) à 2520 MHz ==> 82.57 TFLOPs FP32 ou 42.28 TFLOPs FP32 ET 42.28 TIOPs INT32


Et si avec ma GPU 2080 Ti à pleine charge je fais 2 millions de points par jour sur SRBase TF, et que je décide de me procurer une 4090 que je chargerai à 100% aussi, me suffit-il de faire la règle de 3 suivante pour évaluer mon RAC avec cette nouvelle GPU, si je pars du principe que SRBase TF travaille sur des nombre entiers :

RAC4090 = RAC2080Ti  * (42.28/13.44) = 2000000 * (42.28/13.44) = 6291666

Ce RAC calculé pour la 4090 est le moins bon possible, car si le projet combine des calculs en FP et en INT, cela ne peut que améliorer le résultat, car en FP, il faudra faire la règle de 3 suivante : 2000000 * (82.57/13.44) = 12287202.

Mon raisonnement est-il bon ?

Avec l'ancien projet Collatz, ce genre de calcul fonctionnait assez bien.
Et si je veux faire le même calcul avec d'autres projets, mon problème est plus de savoir quelle est la proportion du travail en FP32 et en INT32, c'est bien cela ?



Rédacteur d'un article sur BOINC, adresse :
http://www.astrocaw.eu/?p=605
Créateur d'un site actif de recherche sur les suites aliquotes :
http://www.aliquotes.com/


Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #7 le: 21 January 2024 à 13:14
WAOUH !
Merci à toi !
Super intéressant, même si je vais devoir lire cela plusieurs fois pour bien piger, effort que je ferai étant donné mon grand intérêt pour le sujet.

Mais si j'ai ça, comme tu le dis (en bleu et rouge pour le données que j'ai sélectionnées dans ma formule ci-dessous) :
==>RTX 2080 Ti: 68 SM - 8704 ALU (Dont 4352 FP32 + 4352 INT32) à 1545 MHz ==> 13.44 TFLOPs FP32 ET 13.44 TIOPs INT32
==>RTX 3090 Ti: 84 SM - 10752 ALU (Dont 5376 FP32 + 5376 FP32/INT32) à 1860 MHz ==> 40.00 TFLOPs FP32 ou 20.00 TFLOPs FP32 ET 20.00 TIOPs INT32
==>RTX 4090: 128 SM - 16384 ALU (Dont 8192 FP32 + 8192 FP32/INT32) à 2520 MHz ==> 82.57 TFLOPs FP32 ou 42.28 TFLOPs FP32 ET 42.28 TIOPs INT32


Et si avec ma GPU 2080 Ti à pleine charge je fais 2 millions de points par jour sur SRBase TF, et que je décide de me procurer une 4090 que je chargerai à 100% aussi, me suffit-il de faire la règle de 3 suivante pour évaluer mon RAC avec cette nouvelle GPU, si je pars du principe que SRBase TF travaille sur des nombre entiers :

RAC4090 = RAC2080Ti  * (42.28/13.44) = 2000000 * (42.28/13.44) = 6291666

Ce RAC calculé pour la 4090 est le moins bon possible, car si le projet combine des calculs en FP et en INT, cela ne peut que améliorer le résultat, car en FP, il faudra faire la règle de 3 suivante : 2000000 * (82.57/13.44) = 12287202.

Mon raisonnement est-il bon ?

Avec l'ancien projet Collatz, ce genre de calcul fonctionnait assez bien.
Et si je veux faire le même calcul avec d'autres projets, mon problème est plus de savoir quelle est la proportion du travail en FP32 et en INT32, c'est bien cela ?

En théorie, ton calcul est bon. Suffit aussi de voir le temps de calcul d'un WU pour ceux qui ont une RTX 4090 (Moyenne de 50-60 secondes) face aux 150-200 secondes des RTX 2080 Ti. Mais il peut avoir des variables comme l'alternance FP/INT que tu as mentionné (Donc éviter de faire plusieurs WU par GPU).

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #8 le: 21 January 2024 à 13:35
En plus des RTX que j'ai mit:

==>RTX 2080 Ti: 68 SM - 8704 ALU (Dont 4352 FP32 + 4352 INT32) à 1545 MHz ==> 13.44 TFLOPs FP32 ET 13.44 TIOPs INT32
==>RTX 3090 Ti: 84 SM - 10752 ALU (Dont 5376 FP32 + 5376 FP32/INT32) à 1860 MHz ==> 40.00 TFLOPs FP32 ou 20.00 TFLOPs FP32 ET 20.00 TIOPs INT32
==>RTX 4090: 128 SM - 16384 ALU (Dont 8192 FP32 + 8192 FP32/INT32) à 2520 MHz ==> 82.57 TFLOPs FP32 ou 42.28 TFLOPs FP32 ET 42.28 TIOPs INT32

Je rajoute (Pour comparer les autres GPU)

==>GeForce GTX 780 Ti: 15 SM - 2880 ALU (FP32/INT32) à 970 MHz ==> 5.58 TFLOPs FP32 / 5.58 TIOPs INT32 (Alternance, donc puissance variable) - 192 ALU/SM
==>GeForce GTX 980 Ti: 22 SM - 2816 ALU (FP32/INT32) à 1076 MHz ==> 6.06 TFLOPs FP32 / 6.06 TIOPs INT32 (Alternance, donc puissance variable) - 128 ALU/SM
==>GeForce GTX 1080 Ti: 28 SM - 3584 ALU (FP32/INT32) à 1545 MHz ==> 11.07 TFLOPs FP32 / 11.07 TIOPs INT32 (Alternance, donc puissance variable) - 128 ALU/SM


==>Radeon R9 290X: 44 CU - 2816 ALU (FP32/INT32) à 1000 MHz ==> 5.63 TFLOPs FP32 / 5.63 TIOPs INT32 (Alternance, donc puissance variable) - 64 ALU/CU - 4xSIMD16/CU
==>Radeon VII: 60 CU - 3840 ALU (FP32/INT32) à 1860 MHz ==> 14.28 TFLOPs FP32 / 14.28 TIOPs INT32 (Alternance, donc puissance variable) - - 64 ALU/CU - 4xSIMD16/CU
==>Radeon RX 5700 XT: 40 CU - 2560 ALU (FP32/INT32) à 1905 MHz ==> 9.75 TFLOPs FP32 / 9.75 TIOPs INT32 (Alternance, donc puissance variable) -- 64 ALU/CU - 2xSIMD32/CU
==>Radeon RX 6900 XT: 80 CU - 5120 ALU (FP32/INT32) à 2250 MHz ==> 23.04 TFLOPs FP32 / 23.04 TIOPs INT32 (Alternance, donc puissance variable) - 64 ALU/CU - 2xSIMD32/CU
==>Radeon RX 7900 XTX: 96 CU - 12288 ALU (Dont 6144 FP32 + 6144 FP32/INT32) à 2500 MHz ==> 61.44 TFLOPs FP32 ou 30.72 TFLOPs FP32 ET 30.72 TIOPs INT32 - 128 ALU/CU - 4xSIMD32/CU


==>ARC A770: 32 Xe - 8192 ALU (Dont 4096 FP32 + 4096 INT32) à 2000 MHz ==> 16.38 TFLOPs FP32 ET 16.38 TIOPs INT32 - 128 ALU/Xe - 16xSIMD8/Xe

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne [AF>Amis des Lapins] Jean-Luc

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 3433
  •   
    • Le calcul partagé en atsronomie sous BOINC
    • E-mail
Réponse #9 le: 21 January 2024 à 14:38
Merci pour toutes tes explications !



Rédacteur d'un article sur BOINC, adresse :
http://www.astrocaw.eu/?p=605
Créateur d'un site actif de recherche sur les suites aliquotes :
http://www.aliquotes.com/


Hors ligne JeromeC

  • CàA
  • Boinc'eur devant l'éternel
  • *****
  • Messages: 31363
  •   
Réponse #10 le: 21 January 2024 à 21:06
Très intéressant Gael-Trinitas. Je suis loin d'être aussi passionné et intéressé que JL mais je relève "Jamais se fier aux graphiques d'utilisation d'un soft de contrôle" : j'ai ouvert un topic chez Einstein depuis longtemps au motif que l'appli GPU O3 pour macOS "semble ne rien faire" sur mon "AMD Radeon Pro 5700 XT Compute Engine (16368MB)", les mises à jour que j'ai faites récemment avec graphique dans ce topic montrent clairement la bascule d'une tâche primegrid où je vois 100% d'utilisation (à la fois avec une appli de monitoring de ressources très connue du monde mac "iStat" ainsi que l'appli standard macOS "moniteur d'activité" où ça montre l'usage CPU tout autant que GPU de n'importe processus fonctionnant à un moment donné), ça passe de proche de 100% d'utilisation à moins de 5%.

Personne sur ce topic n'a répondu clairement, je suis parti du principe que "ça ne fait ou presque" (la tâche utilise en revanche environ 30% d'un thread CPU) et j'ai cessé d'en faire (à l'époque en 2022 et de nouveau après mes tests récents), se pourrait-il que "ça fasse vraiment quelque chose mais non mesuré de la bonne façon par les applis de monitoring" ?

A quoi bon prendre la vie au sérieux, puisque de toute façon nous n’en sortirons pas vivants ? (Alphonse Allais)



Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #11 le: 21 January 2024 à 21:28
Très intéressant Gael-Trinitas. Je suis loin d'être aussi passionné et intéressé que JL mais je relève "Jamais se fier aux graphiques d'utilisation d'un soft de contrôle" : j'ai ouvert un topic chez Einstein depuis longtemps au motif que l'appli GPU O3 pour macOS "semble ne rien faire" sur mon "AMD Radeon Pro 5700 XT Compute Engine (16368MB)", les mises à jour que j'ai faites récemment avec graphique dans ce topic montrent clairement la bascule d'une tâche primegrid où je vois 100% d'utilisation (à la fois avec une appli de monitoring de ressources très connue du monde mac "iStat" ainsi que l'appli standard macOS "moniteur d'activité" où ça montre l'usage CPU tout autant que GPU de n'importe processus fonctionnant à un moment donné), ça passe de proche de 100% d'utilisation à moins de 5%.

Personne sur ce topic n'a répondu clairement, je suis parti du principe que "ça ne fait ou presque" (la tâche utilise en revanche environ 30% d'un thread CPU) et j'ai cessé d'en faire (à l'époque en 2022 et de nouveau après mes tests récents), se pourrait-il que "ça fasse vraiment quelque chose mais non mesuré de la bonne façon par les applis de monitoring" ?

Les utilisations de chaque GPU dépendent des instructions utilisées: FP32, FP64 ou INT32. Il peut aussi avoir une influence sur le programme en question, sur le nombre de thread qu'il envoi dans le GPU par cycle.

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne JeromeC

  • CàA
  • Boinc'eur devant l'éternel
  • *****
  • Messages: 31363
  •   
Réponse #12 le: 21 January 2024 à 22:03
Heu, ça répond à "se pourrait-il que ça fasse vraiment quelque chose mais non mesuré de la bonne façon par les applis de monitoring" ? :idtalacon:

A quoi bon prendre la vie au sérieux, puisque de toute façon nous n’en sortirons pas vivants ? (Alphonse Allais)



Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #13 le: 21 January 2024 à 22:06
Heu, ça répond à "se pourrait-il que ça fasse vraiment quelque chose mais non mesuré de la bonne façon par les applis de monitoring" ? :idtalacon:

T'as un exemple avec le gestionnaire de tache de Windows: Quand BOINC fait un calcul GPU lourd, ce gestionnaire n'affiche pourtant presque rien en taux d'utilisation.

A contrario, t'as MSI Afterburner, qui peut afficher un taux de 100%, ou des variabilités de 40-50%...

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne Maeda

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 2600
  •   
Réponse #14 le: 22 January 2024 à 07:11
J'ai toujours considéré (pour NVidia) les cœurs CUDA comme base : c'est simple plus il y en a plus elle est performantes (après il faut voir la consommation !). Quel rapport entre la valeur cœurs CUDA et ALU ?


Hors ligne JeromeC

  • CàA
  • Boinc'eur devant l'éternel
  • *****
  • Messages: 31363
  •   
Réponse #15 le: 22 January 2024 à 11:42
T'as un exemple avec le gestionnaire de tache de Windows: Quand BOINC fait un calcul GPU lourd, ce gestionnaire n'affiche pourtant presque rien en taux d'utilisation.
Ca fait très longtemps que je fais pas de GPU avec window (la seule fois je pense que c'était avec Shadow en fait, j'ai du mac depuis 2007 et de mémoire y'avait pas encore de GPGPU boinc avant cela ?) mais j'ai souvenir que dans le gestionnaire de tâche tu pouvais paramétrer "quel détail il montre pour le GPU" et en fonction du réglage et en fonction du type d'activité tu pouvais voir "quelque chose se passer" ? (lointain souvenir peut-être biaisé)
Citer
A contrario, t'as MSI Afterburner, qui peut afficher un taux de 100%, ou des variabilités de 40-50%...
C'est quoi ça c'est un utilitaire windows pour MSI ? j'ai pas windows de toutes façons.

Ce que je cherche à savoir c'est s'il y a une possibilité que ces tâches O3 de Einstein fassent finalement vraiment un calcul, ou pas. Et si personne ne répond sur leur forum ben j'en fais pas et voila.

A quoi bon prendre la vie au sérieux, puisque de toute façon nous n’en sortirons pas vivants ? (Alphonse Allais)



Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #16 le: 22 January 2024 à 11:56
J'ai toujours considéré (pour NVidia) les cœurs CUDA comme base : c'est simple plus il y en a plus elle est performantes (après il faut voir la consommation !). Quel rapport entre la valeur cœurs CUDA et ALU ?

"Coeurs CUDA" est un terme purement marketing. On les appelle aussi "shaders" au passage du fait de leurs fonctions de calculs 3D.

Mais le terme "cœurs" n'est pas approprié, vu que techniquement, ce sont que de "simples" unités de calculs arithmétiques qui font une tache.

Si on veut désigner un cœur dans un GPU NVIDIA, ce serai plutôt le cluster SM. Le SM abrite des partitions de "shaders" avec chacun leurs caches.

Si on veut comparer avec un CPU genre RyZen 9 7950X qui a 16-cores, la RTX 4090 dispose de 128-cores actifs.

Les ALU dans un GPU sont disposés en blocs SIMD16 ou SIMD32, pour recueillir divers données par instruction, au contraire des ALU d'un CPU (Oui, il en a) qui ne sont pas disposés par SIMD, mais en individuel et débit supérieur.

Dans un CPU, chaque core abrite des pipelines d'ALU ayant une capacité d'instructions: SSE, et AVX/AVX2/AVX-512 (Qui désigne le nombre de flop par cycle) et le type de calcul (FP ou INT).

Dans un GPU, les ALU ont les mêmes fonctions que ceux des CPU, mais l'organisation diffère complétement pour assurer un parallélisme des données.

La RTX 4090 dispose donc de 128-cores et 16384 ALU, disposés en 8 partitions SIMD16 par cores (Dont 4 font exclusivement du FP32, et 4 autres du FP32 ou INT32). Le terme SIMD16 veut dire qu'ils peuvent recevoir 16 instructions par cycle (Tout en désignant le nombre d'ALU dans ce bloc) pour des données multiples (Pas obligatoirement identique pour le contexte)...

C'est pareil donc chez les GPU AMD: La RX 7900 XTX dispose de 96-cores (les CU) et 12288 ALU, avec 4 partitions SIMD32 (Dont 2 exclusives à FP32, et 2 autres à INT32/FP32).

Des questions? :) :)

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #17 le: 22 January 2024 à 12:05
T'as un exemple avec le gestionnaire de tache de Windows: Quand BOINC fait un calcul GPU lourd, ce gestionnaire n'affiche pourtant presque rien en taux d'utilisation.
Ca fait très longtemps que je fais pas de GPU avec window (la seule fois je pense que c'était avec Shadow en fait, j'ai du mac depuis 2007 et de mémoire y'avait pas encore de GPGPU boinc avant cela ?) mais j'ai souvenir que dans le gestionnaire de tâche tu pouvais paramétrer "quel détail il montre pour le GPU" et en fonction du réglage et en fonction du type d'activité tu pouvais voir "quelque chose se passer" ? (lointain souvenir peut-être biaisé)
Citer
A contrario, t'as MSI Afterburner, qui peut afficher un taux de 100%, ou des variabilités de 40-50%...
C'est quoi ça c'est un utilitaire windows pour MSI ? j'ai pas windows de toutes façons.

Ce que je cherche à savoir c'est s'il y a une possibilité que ces tâches O3 de Einstein fassent finalement vraiment un calcul, ou pas. Et si personne ne répond sur leur forum ben j'en fais pas et voila.

La tache 03 de Einstein est prévu pour du GPU à la base? Et sous quelles instructions calcules t'elle cette application (FP32, FP64, INT32)?

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #18 le: 22 January 2024 à 12:06
Aussi une chose que j'ai remarqué: Il est important de ne pas faire bosser le CPU au max à un autre projet, car le CPU est aussi utilisé pour envoyer les informations aux GPU; je l'ai remarqué avec FAH@Folding: Quand on met le CPU en mode auto (Et que t'as un 16-cores/32-threads), il mettra à 14-cores/28-threads à cette tache, et les 2 autres cores seront pour le pilotage du GPU. Si J'impose 16-cores, le GPU subira des latences à cause des retards de réceptions de données, et la, je ne verrai plus 100% d'utilisation GPU stable, mais des variabilités, voir une diminution (genre à 60-50%)

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne kasur

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 3169
  •   
    • E-mail
Réponse #19 le: 22 January 2024 à 12:19
Ce que je cherche à savoir c'est s'il y a une possibilité que ces tâches O3 de Einstein fassent finalement vraiment un calcul, ou pas. Et si personne ne répond sur leur forum ben j'en fais pas et voila.

Peut-être avec les Watts consommés qui sont par exemple visible dans HWMonitor de CPUID ?


et 194 SETI@home classic workunits (4 764 hours) :p


Hors ligne Maeda

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 2600
  •   
Réponse #20 le: 22 January 2024 à 15:04
Aussi une chose que j'ai remarqué: Il est important de ne pas faire bosser le CPU au max à un autre projet, car le CPU est aussi utilisé pour envoyer les informations aux GPU; je l'ai remarqué avec FAH@Folding: Quand on met le CPU en mode auto (Et que t'as un 16-cores/32-threads), il mettra à 14-cores/28-threads à cette tache, et les 2 autres cores seront pour le pilotage du GPU. Si J'impose 16-cores, le GPU subira des latences à cause des retards de réceptions de données, et la, je ne verrai plus 100% d'utilisation GPU stable, mais des variabilités, voir une diminution (genre à 60-50%)
Merci pour ton explication sur les cœurs CUDA ;)
Je crois qu'il y a quelques années, il fallait dégager un cœur logique CPU (si HT activé) pour assurer à la tâche GPU de fonctionner sans ralentissement. Avec les récentes version de Boinc, on voit qu'il ne prend aucune tâche en plus et dédie bien un cœur par tâche GPU.


Hors ligne bill1170

  • Boinc'eur Respectable
  • ****
  • Messages: 568
  •   
Réponse #21 le: 22 January 2024 à 15:32
 :kookoo:  Bonjour Trinitas et merci pour ce travail.

Est-ce que ce serait abuser de te demander de compléter pour les puces AD 104 et AD 106 ? En effet, ce sont celles qui sont utilisées dans les cartes grand public 40XX d'une gamme de prix plus accessible.
Ma question provenant du fait que j'ai actuellement une 1070Ti en train de rendre l'âme et que je cherche dans la gamme équivalente tant en consommation qu'en prix sa remplaçante.

Bill




Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #22 le: 22 January 2024 à 16:46
:kookoo:  Bonjour Trinitas et merci pour ce travail.

Est-ce que ce serait abuser de te demander de compléter pour les puces AD 104 et AD 106 ? En effet, ce sont celles qui sont utilisées dans les cartes grand public 40XX d'une gamme de prix plus accessible.
Ma question provenant du fait que j'ai actuellement une 1070Ti en train de rendre l'âme et que je cherche dans la gamme équivalente tant en consommation qu'en prix sa remplaçante.

Bill

Merci :)

Tu veux parler de leurs specs techniques? Niveau conception, c'est identique à la AD102.

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro


Hors ligne bill1170

  • Boinc'eur Respectable
  • ****
  • Messages: 568
  •   
Réponse #23 le: 22 January 2024 à 17:44
Tu veux parler de leurs specs techniques? Niveau conception, c'est identique à la AD102.
Pour passer de la conception théorique, que je suppose utilisée pleinement sur la 4090, à l'aide au choix sur de plus petits modèles, il faudrait savoir quelle est la partie du chip qui est (dés)activée sur le modèles commercialisés. Je vois qu'en outre ils jouent aussi sur la bande passante et sur le cache L2 sans compter la fréquence, mais je suppose que l'impact est plus marginal.




Hors ligne TRINITAS

  • Boinc'eur Confirmé
  • ***
  • Messages: 296
  •   
    • E-mail
Réponse #24 le: 22 January 2024 à 21:31
Tu veux parler de leurs specs techniques? Niveau conception, c'est identique à la AD102.
Pour passer de la conception théorique, que je suppose utilisée pleinement sur la 4090, à l'aide au choix sur de plus petits modèles, il faudrait savoir quelle est la partie du chip qui est (dés)activée sur le modèles commercialisés. Je vois qu'en outre ils jouent aussi sur la bande passante et sur le cache L2 sans compter la fréquence, mais je suppose que l'impact est plus marginal.





Voila :)

PC1: RyZen 7 5800X3D - 32GB DDR4 - 2xRadeon RX 7900 GRE - Windows 10 Pro
PC2: Xeon E5-2678 v3 (x2) - 64GB DDR4 - GeForce RTX 2080 SUPER FE + Radeon VII - Windows 10 Pro
PC3: RyZen 3 3200G - 16GB DDR4 - ARC A770 16GB - Windows 10 Pro