Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1627 connectés 

  FORUM HardWare.fr
  Hardware
  Processeur

  Comprendre l'hyper threading

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comprendre l'hyper threading

n°8717978
ouily
Posté le 12-05-2013 à 16:16:14  profilanswer
 

Je suis en train de chercher la nouvelle configue de mon PC: http://forum.hardware.fr/hfr/Hardw [...] 2395_1.htm
 
Mon pc actuel possède 2 cœurs physique et 4 logiques avec l'hyper threading.
 
Sur une tache utilisant un seul cœur, est ce que je possède un quart de la ressource du processeur ou la moitié car lorsque je lance un calcul sur tableur libre office mon ordi plafonne à 25% avec un cœur sur les 4 affichés a fond?

mood
Publicité
Posté le 12-05-2013 à 16:16:14  profilanswer
 

n°8718003
Xenon19
Ubuntu for Human.
Posté le 12-05-2013 à 16:46:37  profilanswer
 

Enfaite un processeur deux coeurs comme le i3 est un faux 4 coeurs ... Dans certaines tâches cette technologie est vraiment utile mais en aucun cas elle remplacera deux vrais coeurs physiques ...
 
Un peu de lecture, google est ton ami : http://fr.wikipedia.org/wiki/Hyper-Threading


---------------
Asus Mini Transformer - Intel Atom X5 X8350 1.44 GHz, 1.92 GHz Turbo - Intel HD 400 - 4 GB memory - 128 GB eMMC - Windows 10.
n°8718033
Althaz
Posté le 12-05-2013 à 17:19:39  profilanswer
 

+1 pour le wiki qui explique plutôt bien la chose même si je remarque qu'ils ont oublié de noter un type de contre-performance assez important : quand 2 processus s’exécutent sur le même core physique en même temps alors qu'un autre core physique est libre.
C'est le rôle de l'OS de distribuer les tâches quand elles sont indépendantes, mais le développeur peut choisir de forcer "tel core logique pour tel tâche" dans un logiciel et dans les faits on constate assez souvent des pertes de performance importantes liés à l'hyperthreading.
 
Pour répondre à la question : proche de la moitié, mais pas tout à fait si on prends en compte les gains potentiels lorsque tous les cores logiques sont utilisés.
 


---------------
TESO @Althaz
n°8718041
Crashdent
Posté le 12-05-2013 à 17:31:09  profilanswer
 

Salut,
 
Il y a un article dans canard PC qui expliquait très bien comment fonctionne l'Hyper-threading : N°14 page 59.
 
Si tu veux je te fait un scan (je te le met en MP) ?  :)  
 
Cdlt.  :jap:

n°8718044
ouily
Posté le 12-05-2013 à 17:34:06  profilanswer
 

Si pour une tache unique, j'ai accès à la moitié de la ressource du processeur pourquoi alors mon processeur plafonne a 25% d'après windows? Est ce une erreur de windows?

n°8718047
Xenon19
Ubuntu for Human.
Posté le 12-05-2013 à 17:37:25  profilanswer
 

Crashdent tu pourras me l'envoyer aussi ? Merci  :)


---------------
Asus Mini Transformer - Intel Atom X5 X8350 1.44 GHz, 1.92 GHz Turbo - Intel HD 400 - 4 GB memory - 128 GB eMMC - Windows 10.
n°8718050
Crashdent
Posté le 12-05-2013 à 17:40:30  profilanswer
 

Ok. ;)

n°8718052
ouily
Posté le 12-05-2013 à 17:42:40  profilanswer
 

Crashdent je veux bien également ta doc, Merci.

n°8718064
ouily
Posté le 12-05-2013 à 18:00:49  profilanswer
 

Merci Pour la doc Crashdent.
 
La doc dit donc en résumé que si un coeur logique d'un coeur physique bloque sur une tache le 2ème coeur logique prend le relais en utilisant le reste de la ressouce disponible du coeur physique.
 
Je ne comprend pas alors pourquoi windows me dit que j'ai 1 coeur logique à fond et je vois bien que le pc rame sur cette tache avec un processeur à 25% :-(
Le processeur devrait être à 50%.

n°8718072
Althaz
Posté le 12-05-2013 à 18:12:10  profilanswer
 

ouily a écrit :

Si pour une tache unique, j'ai accès à la moitié de la ressource du processeur pourquoi alors mon processeur plafonne a 25% d'après windows? Est ce une erreur de windows?


 
Windows voit 4 cores, ton appli en utilise 1 ce qui de son point de vue fait 25% d'utilisé.
 
Maintenant ce que Windows ne peut pas prendre en considération c'est que si t'en lance un deuxième et que tu le force sur le deuxième core logique les perfs des deux threads va se trouver divisé par 2 (ou presque) car ils vont être calculés par le même core physique.  


---------------
TESO @Althaz
mood
Publicité
Posté le 12-05-2013 à 18:12:10  profilanswer
 

n°8718075
Xenon19
Ubuntu for Human.
Posté le 12-05-2013 à 18:13:27  profilanswer
 

Comme on appel vulgairement une application mono-thread (utilisant 1 seul coeur)  :hello:


---------------
Asus Mini Transformer - Intel Atom X5 X8350 1.44 GHz, 1.92 GHz Turbo - Intel HD 400 - 4 GB memory - 128 GB eMMC - Windows 10.
n°8718083
ouily
Posté le 12-05-2013 à 18:21:59  profilanswer
 

Ok, donc erreur de la part de windows.
Merci pour votre aide.

n°8718087
ouily
Posté le 12-05-2013 à 18:23:17  profilanswer
 

Xenon19 a écrit :

Comme on appel vulgairement une application mono-thread (utilisant 1 seul coeur)  :hello:


 ? :heink:

n°8718094
Althaz
Posté le 12-05-2013 à 18:26:59  profilanswer
 

Oui et non, on ne peut pas vraiment parler d'erreur, c'est juste que le gestionnaire de tâches affiche le temps d'utilisation moyen de chaque core logique et leur moyenne.  
Il faut l’interpréter en tant que tel, c'est pas une mesure de "consommation de puissance de calcul" ce qui serait franchement impossible à calculer au vu de tout ce qu'il faudrait prendre en compte.


---------------
TESO @Althaz
n°8718108
ouily
Posté le 12-05-2013 à 18:41:50  profilanswer
 

Althaz a écrit :

Oui et non, on ne peut pas vraiment parler d'erreur, c'est juste que le gestionnaire de tâches affiche le temps d'utilisation moyen de chaque core logique et leur moyenne.  
Il faut l’interpréter en tant que tel, c'est pas une mesure de "consommation de puissance de calcul" ce qui serait franchement impossible à calculer au vu de tout ce qu'il faudrait prendre en compte.


 
Merci de la précision qui n'est pas des moindres.  ;)

n°8718198
Yog Sothot​h
Conchie les religions
Posté le 12-05-2013 à 20:23:18  profilanswer
 

*S'avance sur la pointe des pieds en jouant de la flûte, prends sa voix mielleuse* Crashdent, pourrais tu m'envoyer ta doc ?
 
 [:americanpinkiepie:1]


Message édité par Yog Sothoth le 12-05-2013 à 20:24:14

---------------
L'adulte ne croit pas au père Noël: Il vote. (P.Desproges)
n°8719934
master71
ça manque de place.
Posté le 14-05-2013 à 14:38:14  profilanswer
 

Althaz a écrit :

Maintenant ce que Windows ne peut pas prendre en considération c'est que si t'en lance un deuxième et que tu le force sur le deuxième core logique les perfs des deux threads va se trouver divisé par 2 (ou presque) car ils vont être calculés par le même core physique.  


bah dans les faits, non, la puissance des 2 threads n'est pas divisée par deux.
reprenons le mode de fonctionnement de l'hyper-threading par INTEL.
Dans un processeur normal, il y a un pipeline d’exécution des instructions, ce pipeline est alimenté en micro-instructions par le décodeur, mais ce décodeur cadence et organise ces instructions en fonction d'impératifs tels l'attente d'un chargement mémoire, d'un calcul, etc., ce qui fait que ce pipeline a des bulles où il ne fait rien.
Dans ce même processeurs il y a plusieurs modules d'exécution des micro-instructions, le thread qui les alimente ne les utilise pas tous en même temps.
ces 2 fonctionnement font que le processeur passe une bonne partie de son temps en sous-utilisation.
 
Donc INTEL, et IBM qui va bien plus loin, a utilisé 2 technologies pour remédier à ces 2 problèmes, l'OOE (out of order) qui mélange les instructions en respectant un certain nombre de contrainte en faisant que le fil des instructions du thread ne soit plus exécuté dans l'ordre, mais au plus rapide, et l'hyperthreading qui mélange 2 threads, ceci afin d'avoir un processeur qui tourne à plein.
 
De fait, un core simple avec hyperthreading correspond à 80/90% d'un vrai dual core, ce qui est très intéressant, car pour un ajout d'une très petite partie électronique, tu as un gros gain en puissance.


---------------
un jour, moi aussi, je serais grand...
n°8720057
Crashdent
Posté le 14-05-2013 à 16:06:58  profilanswer
 

master71 a écrit :

De fait, un core simple avec hyperthreading correspond à 80/90% d'un vrai dual core, ce qui est très intéressant, car pour un ajout d'une très petite partie électronique, tu as un gros gain en puissance.


 
Je t'envoie la doc à toi aussi. ;)

n°8720060
Althaz
Posté le 14-05-2013 à 16:09:41  profilanswer
 

master71 a écrit :


bah dans les faits, non, la puissance des 2 threads n'est pas divisée par deux.
reprenons le mode de fonctionnement de l'hyper-threading par INTEL.
Dans un processeur normal, il y a un pipeline d’exécution des instructions, ce pipeline est alimenté en micro-instructions par le décodeur, mais ce décodeur cadence et organise ces instructions en fonction d'impératifs tels l'attente d'un chargement mémoire, d'un calcul, etc., ce qui fait que ce pipeline a des bulles où il ne fait rien.
Dans ce même processeurs il y a plusieurs modules d'exécution des micro-instructions, le thread qui les alimente ne les utilise pas tous en même temps.
ces 2 fonctionnement font que le processeur passe une bonne partie de son temps en sous-utilisation.
 
Donc INTEL, et IBM qui va bien plus loin, a utilisé 2 technologies pour remédier à ces 2 problèmes, l'OOE (out of order) qui mélange les instructions en respectant un certain nombre de contrainte en faisant que le fil des instructions du thread ne soit plus exécuté dans l'ordre, mais au plus rapide, et l'hyperthreading qui mélange 2 threads, ceci afin d'avoir un processeur qui tourne à plein.
 
De fait, un core simple avec hyperthreading correspond à 80/90% d'un vrai dual core, ce qui est très intéressant, car pour un ajout d'une très petite partie électronique, tu as un gros gain en puissance.


 
Euh, en général on parle d'un niveau de perfs variant entre 55 et 65% d'un vrai dual core.
 
D’où le "(ou presque)" dans ma phrase.


---------------
TESO @Althaz
n°8720094
master71
ça manque de place.
Posté le 14-05-2013 à 16:48:05  profilanswer
 

les docs que j'avais lues à l'époque parlait de plus que ça...


---------------
un jour, moi aussi, je serais grand...
n°8720134
crypo
Posté le 14-05-2013 à 17:25:48  profilanswer
 

Fais pété la doc Crash svp ;)

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Hardware
  Processeur

  Comprendre l'hyper threading

 

Sujets relatifs
Comprendre le débit en SATA 2Hyper-V après plantage.
Mach Xtreme MX-DS Turbo ou SuperSSpeed Hyper Gold S301 SLCCM Hyper 212 Evo sur I5-3570K
FX-8350 et Hyper-Threading ??? HelpFils du 4 PWN du Cooler Master Hyper 212 EVO
Que signifie Hyper X ? 
Plus de sujets relatifs à : Comprendre l'hyper threading


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR