C'est quoi l’intérêt d'avoir beaucoup de threads?

C'est quoi l’intérêt d'avoir beaucoup de threads? - Processeur - Hardware

Marsh Posté le 18-04-2020 à 16:38:52    

Quels seront les avantages d'un processeur 8c/16t par rapport à un processeur 8c/8t et vice-versa?

Reply

Marsh Posté le 18-04-2020 à 16:38:52   

Reply

Marsh Posté le 18-04-2020 à 16:43:13    

ca depend de l'usage
 
en général l'hyperthreading apporte +- 30% de perf cpu
 
si c'est pour jouer, c'est pas forcement nécessaire


---------------
Infographiste 3D & Post-Production - Freelance
Reply

Marsh Posté le 18-04-2020 à 16:45:36    

Calculer plus de tâches simultanément sur BOINC ou folding@home :o


---------------
HWBot | Conso GPU | Who's who PSU | Mes BD \o/ | GReads | MSpaint
Reply

Marsh Posté le 18-04-2020 à 16:49:25    

C'est un peu comme avec une voiture (désolé pour les analogies avec l'automobile, il parait que c'est pas bien), 4x4 ou 2x4 où ça dépend de la route et du temps qu'il fait ou qu'il a fait.

 

Tout dépend de l'utilisation et des programmes utilisés.

 

Certains programmes sont développés pour utiliser les coeurs logiques quand d'autres ne sont pas optimisés pour mais sont capables de les utiliser également. Pour certains programmes, les coeurs logiques sont tout simplement absents alors qu'ils sont bien réels.
Ca dépend vraiment de comment le développeur a imaginé son programme.

 

Les avantages sont simples : diminuer le temps d'utilisation d'un CPU pour un processus donné, ou une liste de processus si on considère un système d'exploitation actuel ou un programme assez élaboré.
Plus le temps d'utilisation du CPU est bas, plus les programmes tournent vite.
Et vice et versa.


Message édité par artouillassse le 18-04-2020 à 16:50:49

---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 18-04-2020 à 17:24:23    

Si c'est logiciel pourquoi les fabricants ne mettent pas alors automatiquement plus de threads que de cœurs?
 
Mais on est quand même d'accord qu'un processeur 6c/6t sera toujours préférable à un ordinateur 4c/8t?

Reply

Marsh Posté le 18-04-2020 à 17:36:29    

ZugZwei a écrit :

Mais on est quand même d'accord qu'un processeur 6c/6t sera toujours préférable à un ordinateur 4c/8t?


Non, car comme dit au dessus ça dépend de l'utilisation.
C'est comme de dire qu'un verre à vin c'est "mieux" qu'un verre à liqueur, si tu ne sers que des liqueurs dans ton verre à vin bah il est inutile.

 

Quand ton utilisation nécessite 4 coeurs et pas plus, l'un comme l'autre n'a pas d'utilité car tes programmes n'en tireront pas partie.
Maintenant les systèmes d'exploitation récents se servent de ces coeurs logiques, cependant ça ne représente pas un temps CPU assez important pour que l'un ait un avantage sur l'autre.

 

Dans ta question, si tu as une utilisation principale de logiciels qui vont exploiter pleinement 8 thread, un 4c/8t sera plus efficace pour toi qu'un 6c/6t.
Ca doit pas se jouer à beaucoup ceci dit, et dans ton exemple tu ne tiens pas compte de l'architecture du CPU. 6C/6T c'est la dernière génération chez intel, 4c/8t c'est l'ancienne génération. Avec la même performance par coeur pour les deux CPU on pourrait dire que le 4c/8t sera plus efficace que le 6c/6t pour des applications qui tirent pleinement partie des 8 thread.

 

En vrai je ne crois pas qu'il y ait beaucoup d'études à ce sujet, j'avance certainement des incongruités qui en feront bondir certains, et tant mieux, sinon on se ferait vite chier avec ce confinement.


Message édité par artouillassse le 18-04-2020 à 17:42:00

---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 18-04-2020 à 17:37:16    

Oui et non. T'as la technologie utilisée qui influe pas mal. Un 4C/4T d'aujourd'hui fait bien mieux qu'un 4C/8T d'il y a dix ans, à fréquence égale.

 

T'as aussi la fréquence qui joue beaucoup.

 

T'as des applis qui ont besoin de peu de cœurs mais qui vont très vite, genre les jeux vidéos. A contrario, un serveur aura besoin d'une multitude de cœurs mais sera moins dépendant de leur fréquence.

 

Concernant le multithreading, certaines techno utilisent la totalité ou peu s'en faut des ressource d'un cœur (genre l'AVX), ce qui fait que l'hyperthreading n'aurait aucun sens ici.

 

tl;dr : tout est question de besoin :o

 


Merde, je me rend compte que j'ai pondu tellement d'approximation que ça en devient peu lisible [:kyjja:3]

 


Edith : Grillé par artouillasse :o


Message édité par Kyjja le 18-04-2020 à 17:37:45

---------------
HWBot | Conso GPU | Who's who PSU | Mes BD \o/ | GReads | MSpaint
Reply

Marsh Posté le 18-04-2020 à 17:44:24    

N'empèche que le i3 10100 4c/8t entrée de gamme série 10 sera plus performant qu'un i7 7700k 4c/8t haut de gamme série 7, ça fait quelque chose.
 
Comme dit plus haut pour le calcul participatif c'est utile, pour la bureautique bien moins.

Reply

Marsh Posté le 18-04-2020 à 17:47:18    

ZugZwei a écrit :

Quels seront les avantages d'un processeur 8c/16t par rapport à un processeur 8c/8t et vice-versa?


Un processeur 8c/16t c'est l'équivalent d'un processeur 12c/12t

Reply

Marsh Posté le 18-04-2020 à 17:49:30    

gouik a écrit :

N'empèche que le i3 10100 4c/8t entrée de gamme série 10 sera plus performant qu'un i7 7700k 4c/8t haut de gamme série 7, ça fait quelque chose.
 
Comme dit plus haut pour le calcul participatif c'est utile, pour la bureautique bien moins.


j'ai pas été voir de bench de ces CPU, mais attention, il n'y a pas que le nombre de core qui entre en jeu.
 
le cache a aussi une tres grosse importance par exemple


---------------
#mais-chut
Reply

Marsh Posté le 18-04-2020 à 17:49:30   

Reply

Marsh Posté le 18-04-2020 à 17:53:35    

gouik a écrit :

N'empèche que le i3 10100 4c/8t entrée de gamme série 10 sera plus performant qu'un i7 7700k 4c/8t haut de gamme série 7, ça fait quelque chose.


Vu la différence de générations ce n'est pas étonnant, mais faudra surtout voir dans quelle mesure l'i3 sera plus performant, et à mon avis ça ne se jouera pas à beaucoup entre les deux, à fréquence égale.


---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 18-04-2020 à 18:33:02    

Scrabble a écrit :


Un processeur 8c/16t c'est l'équivalent d'un processeur 12c/12t


 
 [:mooonblood:3]


---------------
HWBot | Conso GPU | Who's who PSU | Mes BD \o/ | GReads | MSpaint
Reply

Marsh Posté le 18-04-2020 à 19:57:44    

Ce qu’on peut dire c’est que les 9700k et 8700k ont des perfs comparables alors qu’ils sont totalement différent  
9700k : 8c/8t
8700k : 6c/12t
 
Sinon en jeu : avec beaucoup de cores, actuellement, le SMT / hyper threading sert quasi à rien.  
 
En appli c’est totalement different.


Message édité par jujuf1 le 18-04-2020 à 19:58:07
Reply

Marsh Posté le 18-04-2020 à 20:03:03    

De toutes façons la question première du topic était de savoir à quoi servent les thread entre un CPU 8c/8t et un autre 8c/16t.
Embrayer sur les différences entre du 6c/6t et 4c/8t c'était un peu tiré par les poils du cul si vous me passez l'expression.

 

Alors, il est content de la réponse collégiale ou une autre question alambiquée nous attend ? :whistle:

 

Oui le confinement c'est chiant, mais lancer des thread (oh tiens, ils reviennent) sur le forum juste pour ça, c'est chiant aussi :o


Message édité par artouillassse le 18-04-2020 à 20:03:56

---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 18-04-2020 à 21:17:27    

A quoi sert artouillasse ? :o


---------------
HWBot | Conso GPU | Who's who PSU | Mes BD \o/ | GReads | MSpaint
Reply

Marsh Posté le 19-04-2020 à 09:29:41    

Kyjja a écrit :

A quoi sert artouillasse ? :o


Quand t'auras la réponse tu seras surpris de la question.


---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 19-04-2020 à 11:17:10    


Argumente ?

Reply

Marsh Posté le 19-04-2020 à 11:44:35    

Ta phrase ne tient aucun compte de la fréquence, l'IPC ou des techno embarquées. Y a juste un arbitraire "Bon l'HT, ça apporte 50% de perf" (alors que les tests tendent à montrer que le gain est de l'ordre de 30% en moyenne).
 
'nuf said.
 
 

artouillassse a écrit :


Quand t'auras la réponse tu seras surpris de la question.


 
10 raisons d'aimer artouillasse ! La 4eme va vous étonner !


---------------
HWBot | Conso GPU | Who's who PSU | Mes BD \o/ | GReads | MSpaint
Reply

Marsh Posté le 19-04-2020 à 17:46:04    

Je parlais d'une forme générique, au niveau technique et théorique, c'est pas un comparatif entre deux processeurs.
 
Je pensais que les cœurs physiques c'était de loin le plus important, mais d'après vos réponses non. Car si un cœur est divisé en deux threads, chaque thread aura la moitié de la puissance du cœur tandis que si un cœur correspond à une thread bah elle aura toute la puissance du cœur, c'est ça? Mais j'ai compris que c'est 30% mieux d'avoir artificiellement 16 cœurs moins puissants que 8 cœurs avec le double de la puissance chaque.
 
Car je me demandais qu'est ce qui est le plus avantageux entre avoir 16 processus traités à 2 GHz ou 8 processus traités à 4 GHz + 8 en file d'attente qui seront traités à la même vitesse.

Reply

Marsh Posté le 19-04-2020 à 17:57:27    

Les processeurs tournant au max à 2 Ghz et ayant un nombre de coeurs élevés sont fait pour de la basse consommation, ils sont inaptes au jeu vidéo. Pour du jeu vidéo, il faut aujourd'hui, au minimum 4c/8t, ou 6c/6t, et ceci avec une bonne fréquence (3GHz mini). Mais dans un futur proche, il est possible que ça ne suffise plus. Donc un 6c/12t, ou mieux un 8c/16t est recommandé pour être tranquille à l'avenir.

Reply

Marsh Posté le 19-04-2020 à 18:22:30    

Citation :

Je pensais que les cœurs physiques c'était de loin le plus important, mais d'après vos réponses non. Car si un cœur est divisé en deux threads, chaque thread aura la moitié de la puissance du cœur tandis que si un cœur correspond à une thread bah elle aura toute la puissance du cœur, c'est ça? Mais j'ai compris que c'est 30% mieux d'avoir artificiellement 16 cœurs moins puissants que 8 cœurs avec le double de la puissance chaque.


 
 
les coeurs physiques sont de vrais coeurs... physiques
c'est le plus important
 
l'HT c'est un coeur artificiel si tu veux
 
 
si tu prends un cpu 8c/16t et que tu desactives l'hyperthreading et disons que chaque coeur fait 100 pts
 
- sans HT : 800 pts
- avec HT : 800 + 800*30% = 1040 pts
 
 

Citation :

Car je me demandais qu'est ce qui est le plus avantageux entre avoir 16 processus traités à 2 GHz ou 8 processus traités à 4 GHz + 8 en file d'attente qui seront traités à la même vitesse.


 
en tres tres simplifié:
 
16c*2ghz = 32 Ghz
8c*4ghz + HT = 32 + 30% = 41.6 Ghz
 
 
Apres ca depend de l'usage. Pour du jeux, la frequence est souvent plus importante que le nbre de coeurs (pcq les jeux ne tirent pas forcement profit de bcp bcp de coeurs, physiques ou logiques)
 
Par contre, pour du rendu 3D, du calcul etc. là c'est bien mieux utilisé


---------------
Infographiste 3D & Post-Production - Freelance
Reply

Marsh Posté le 19-04-2020 à 23:06:02    

kabyll a écrit :

Citation :

Je pensais que les cœurs physiques c'était de loin le plus important, mais d'après vos réponses non. Car si un cœur est divisé en deux threads, chaque thread aura la moitié de la puissance du cœur tandis que si un cœur correspond à une thread bah elle aura toute la puissance du cœur, c'est ça? Mais j'ai compris que c'est 30% mieux d'avoir artificiellement 16 cœurs moins puissants que 8 cœurs avec le double de la puissance chaque.


 
 
les coeurs physiques sont de vrais coeurs... physiques
c'est le plus important
 
l'HT c'est un coeur artificiel si tu veux
 
 
si tu prends un cpu 8c/16t et que tu desactives l'hyperthreading et disons que chaque coeur fait 100 pts
 
- sans HT : 800 pts
- avec HT : 800 + 800*30% = 1040 pts
 
 

Citation :

Car je me demandais qu'est ce qui est le plus avantageux entre avoir 16 processus traités à 2 GHz ou 8 processus traités à 4 GHz + 8 en file d'attente qui seront traités à la même vitesse.


 
en tres tres simplifié:
 
16c*2ghz = 32 Ghz
8c*4ghz + HT = 32 + 30% = 41.6 Ghz
 
 
Apres ca depend de l'usage. Pour du jeux, la frequence est souvent plus importante que le nbre de coeurs (pcq les jeux ne tirent pas forcement profit de bcp bcp de coeurs, physiques ou logiques)
 
Par contre, pour du rendu 3D, du calcul etc. là c'est bien mieux utilisé


 
 
C'est un peu dangeureux de calculer en Ghz comme ça, perso je préfère utiliser une formule de ce genre :  
 
Performance = IPC * Nbdecoeurs * Fréquence (en valeur numérique de Ghz, par exemple 4.2Ghz = 4.2), éventuellement multiplier par un 1.3 si HT  
 
Par IPC j'entends une valeur dépendant de la génération, par exemple 100 pour skylake  
On arrive à peu prêt au même résultat, mais ça permet de parler en "indice de performance" plutôt qu'en Ghz :)

Reply

Marsh Posté le 19-04-2020 à 23:24:52    

si tu préfères, ca n'avait rien de tres scientifique, c'était juste pour illustrer ;)
 


---------------
Infographiste 3D & Post-Production - Freelance
Reply

Marsh Posté le 20-04-2020 à 10:06:54    

ZugZwei a écrit :

Je pensais que les cœurs physiques c'était de loin le plus important, mais d'après vos réponses non. Car si un cœur est divisé en deux threads, chaque thread aura la moitié de la puissance du cœur tandis que si un cœur correspond à une thread bah elle aura toute la puissance du cœur, c'est ça?


C'est une histoire de temps CPU. C'est un peu compliqué à décrire mais en gros on utilise la latence que prend le traitement d'une info pour faire bosser le même coeur sur plusieurs processus.  
Un peu comme si tu vidais une cruche dans une autre cruche. Si tu le fais manuellement tu es obligé de vider l'intégralité de la première cruche dans la deuxième pour remplir à nouveau la première cruche.
Mais si tu perces la première cruche pour qu'elle s'écoule dans la deuxième, tu peux la remplir PENDANT qu'elle se vide.
 
En réalité la puissance d'un coeur n'est pas divisée en deux, il y a toujours une perte quelque part, mais on essaie de reduire le temps perdu par un coeur non chargé à fond.
C'est un peu ce que j'en ai compris du moins.
 
Je ne suis pas sûr que ce procédé puisse fonctionner avec un CPU monocoeur qui serait coupé en deux, il faut un vrai double coeur, mais peut-être que je m'avance un peu.


---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 20-04-2020 à 11:17:14    

J'ai une machine sous atom N270, tu veux que je verse de l'eau dessus pour voir ?


---------------
HWBot | Conso GPU | Who's who PSU | Mes BD \o/ | GReads | MSpaint
Reply

Marsh Posté le 20-04-2020 à 11:39:02    

artouillassse a écrit :


C'est une histoire de temps CPU. C'est un peu compliqué à décrire mais en gros on utilise la latence que prend le traitement d'une info pour faire bosser le même coeur sur plusieurs processus.  
Un peu comme si tu vidais une cruche dans une autre cruche. Si tu le fais manuellement tu es obligé de vider l'intégralité de la première cruche dans la deuxième pour remplir à nouveau la première cruche.
Mais si tu perces la première cruche pour qu'elle s'écoule dans la deuxième, tu peux la remplir PENDANT qu'elle se vide.
 
En réalité la puissance d'un coeur n'est pas divisée en deux, il y a toujours une perte quelque part, mais on essaie de reduire le temps perdu par un coeur non chargé à fond.
C'est un peu ce que j'en ai compris du moins.
 
Je ne suis pas sûr que ce procédé puisse fonctionner avec un CPU monocoeur qui serait coupé en deux, il faut un vrai double coeur, mais peut-être que je m'avance un peu.


 
Ok mais en fait pourquoi c'est pas normalisé? Qu'est ce qui empêche que tous les processeurs multi cœurs n'aient pas deux threads par cœur? C'est à cause des contraintes de chaleur générée? de consommation?

Reply

Marsh Posté le 20-04-2020 à 12:06:50    

ZugZwei a écrit :

Ok mais en fait pourquoi c'est pas normalisé? Qu'est ce qui empêche que tous les processeurs multi cœurs n'aient pas deux threads par cœur? C'est à cause des contraintes de chaleur générée? de consommation?


C'est un choix de la part d'intel et AMD, je ne bosse ni pour l'un ni pour l'autre donc .... podzob.


---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 20-04-2020 à 13:18:17    

ZugZwei a écrit :


 
Ok mais en fait pourquoi c'est pas normalisé? Qu'est ce qui empêche que tous les processeurs multi cœurs n'aient pas deux threads par cœur? C'est à cause des contraintes de chaleur générée? de consommation?


 
Salut
 
c'est intrinsèque à l'architecture du CPU.
Une meilleur analogie que la cruche d'eau, serait une ligne de fabrication avec de multiple postes (dans le CPU ça se nomme un "pipeline" ).
Hors chaque instruction qui dois être traitée ne dois pas forcément passé par tout les postes de cette ligne de fabrication. ce qui induit que des postes se tourne les pousses.
 
l'hyperthreading permet d'éviter cela en essayant de combler les trous ...
 
Perso je ne suis absolument pas d'accord de quantifié le gain que cela apporte tant cela dépend de ce qui est exécuter par l'OS.
 
 [:hpl-nyarlathotep]   :o  


---------------
"La perfection ne consiste pas à faire des choses extraordinaires, mais à faire des choses ordinaires de façon extraordinaire,"BDD cartes MINI ITX
Reply

Marsh Posté le 20-04-2020 à 13:51:34    

madpo a écrit :

Une meilleur analogie que la cruche d'eau, serait une ligne de fabrication avec de multiple postes (dans le CPU ça se nomme un "pipeline" ).
Hors chaque instruction qui dois être traitée ne dois pas forcément passé par tout les postes de cette ligne de fabrication. ce qui induit que des postes se tourne les pousses.


Elle est trop pourrite ton analogie en plus. :o
Mauvaise conception de la ligne de fabrication, tout bonnement ! :o
#redface

madpo a écrit :

Perso je ne suis absolument pas d'accord de quantifié le gain que cela apporte tant cela dépend de ce qui est exécuter par l'OS.


Ca par contre totalement d'accord avec ton désaccord.

Message cité 1 fois
Message édité par artouillassse le 20-04-2020 à 13:52:58

---------------
3000 tués sur les routes chaque année - c'est décidé, demain je roule sur les trottoirs ©brèves de comptoire
Reply

Marsh Posté le 20-04-2020 à 14:29:19    

artouillassse a écrit :


Elle est trop pourrite ton analogie en plus. :o
Mauvaise conception de la ligne de fabrication, tout bonnement ! :o
#redface


 
en effet j ai pas compté les grévistes  [:cerveau o]  


---------------
"La perfection ne consiste pas à faire des choses extraordinaires, mais à faire des choses ordinaires de façon extraordinaire,"BDD cartes MINI ITX
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed