Le rendez-vous des videastes francophones





Précédent   Forums > Logiciels de montage > Sony Vegas - DVD Architect

Réponse
 
Outils de la discussion Modes d'affichage
  #1  
Vieux 07/02/2010, 20h54
zarathoustra zarathoustra est déconnecté
Membre Confirmé
 
Date d'inscription: April 2008
Messages: 152
Par défaut Perte de performances avec l'hyperthreading - Pourquoi?


Imaginons qu’on a une tache couteuse en temps à effectuer, une solution est de parallélisé la tache, par exemple, en la coupant en 2 et en l’exécutant en parallèle sur 2 cœur. En faisant ca, on comprend bien que dans le meilleur des cas notre tache sera effectuée en 2 fois moins de temps.

Qu’est ce que l’hyperthreading ?

C’est l’idée de créer des cœurs virtuels et de faire en sorte que les taches affecté à ces cœurs virtuelles soient exécuté par des cœurs réels. Par exemple, 8 cœurs virtuels, pour 4 cœurs physiques, et chaque cœur physique exécutent les taches de 2 cœurs virtuels.

Pourquoi créer des cœurs virtuels ?


Eh bien, parce que permet d’améliorer le rendement des cœurs réels. En ayant 2 cœurs virtuels, chaque cœur réel à plus de chance de toujours trouver quelque chose à faire, dans une situation ou la tache sur l’un des cœurs virtuels serait en attente de quelque chose par exemple.

Pourquoi peut-on perdre en performance avec l’hyperthreading dans certains cas ?

Prenons le cas d’un processeur sans hyperthreading :

Chacune des 2 taches est exécutée en parallèle et on peut espérer que le tout prenne 2 fois moins de temps.
Maintenant prenons un processeur avec hyperthreading comme l’I7 :


Dans le cas illustré ci-dessus, on voit que les 2 taches sont exécuté sur 2 cœurs virtuels qui sont sur 2 cœurs réels différent, nous sommes donc dans un cas similaire au processeur sans hyperthreading, et on peut espérer que les tout sera effectué en 2 fois moins de temps.
Maintenant, imaginons un autre cas. Nos 2 taches peuvent être effectué sur n’importe quelle cœur virtuels puisque le système d’exploitation n’as pas conscience que les cœurs soient réels ou virtuelles, ils voient juste 8 cœurs, et peut mettre nos taches sur n’importe lequel d’entre eux. On peut donc très bien se retrouver dans cette situation :

Dans ce cas, on voit que nos 2 taches sont effectué sur 2 cœurs virtuelles différent, mais c’est 2 cœurs virtuels sont sur le même cœur physique. On est donc dans une situation ou la totalité de la tache 1 est effectué sur un même cœur réel et ou les choses ne sont donc pas vraiment parallélisé. On n’a donc aucune chance que cela prenne 2 fois moins de temps.
C’est ce cas de figure qui fait qu’on peut constater une perte de performance entre processeur 4 cœurs sans hyperthreading et un avec hyperthreading.

C’est donc sans issue ? Nous sommes condamnés à de moindre performance avec ces processeurs ?


Non. Il faut que les programmeurs ne découpent pas la tache en 2 parties, mais en N parties (N étant le nombre de cœurs virtuels). De cette façon, chaque cœur réel est sollicité à 200% et on obtient 100% de chaque. Dans notre cas précis, il faudrait découper la tache en 8 parties, et on aurait des chances effectives que le tout prenne 4 fois moins de temps. Et là tout se passerais bien.

Pourquoi les programmes ne sont pas déjà écrits comme ca ?

Parce que paralléliser n’est pas simple. Changer la manière dont le programme est déjà parallélisé non plus. C’est compliqué et couteux, on s’expose à de nouvelles catégories de bugs rien qu’en parallélisant, et de nombreuses problématiques peuvent apparaitre.
Réponse avec citation
  #2  
Vieux 08/02/2010, 02h17
Avatar de STEF
STEF STEF est déconnecté
Optimisateur d'efficacité
 
Date d'inscription: July 2005
Localisation: 54 57 67
Messages: 4 394
Envoyer un message via MSN à STEF
Par défaut Re : Perte de performances avec l'hyperthreading - Pourquoi?

.... et pourtant

i7 920 avec HT (4 Cores + 4 Virtuels) > Bi Xeon 5430 (2x 4 Cores)

++

SteF
Réponse avec citation
  #3  
Vieux 08/02/2010, 09h24
zarathoustra zarathoustra est déconnecté
Membre Confirmé
 
Date d'inscription: April 2008
Messages: 152
Par défaut Re : Perte de performances avec l'hyperthreading - Pourquoi?

Citation:
Envoyé par STEF Voir le message
i7 920 avec HT (4 Cores + 4 Virtuels) > Bi Xeon 5430 (2x 4 Cores)
Surement, mais c'est pas la meme architecture non plus.
Réponse avec citation
  #4  
Vieux 08/02/2010, 16h34
ClaudeO ClaudeO est déconnecté
Membre Confirmé
 
Date d'inscription: December 2007
Messages: 186
Par défaut Re : Perte de performances avec l'hyperthreading - Pourquoi?

Une tache, c'est une salissure, mais une tâche, c'est un travail !

Je pose des accents circonflexes, tu pourras les mettre sur ton clavier ...^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Réponse avec citation
  #5  
Vieux 10/02/2010, 13h54
cslevine cslevine est déconnecté
Nouveau sur le *****
 
Date d'inscription: December 2009
Messages: 76
Par défaut Re : Perte de performances avec l'hyperthreading - Pourquoi?

-1
Réponse avec citation
Réponse

Outils de la discussion
Modes d'affichage

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non

Navigation rapide

Discussions similaires
Discussion Auteur Forum Réponses Dernier message
V8: Bénéfices et performances CM + CPU agamennon Sony Vegas - DVD Architect 4 30/12/2009 17h38
Vista : 2X plus de RAM que XP sont requis à performances égales Uniweb Les news de la vidéo 2 25/09/2007 22h23
Mais pourquoi on ne peut "rien" faire avec Imovie ? ;) chaboune Apple - les logiciels MAC 11 03/10/2006 01h54
cherche logiciel DVD->AVI avec compression sans perte prof shadoko DV, technique générale video et audio 1 08/07/2006 02h31
Baisse de performances de Vegas... goguy Sony Vegas - DVD Architect 15 30/03/2006 21h26


Fuseau horaire GMT +2. Il est actuellement 01h33.
Plan de Site: 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22
23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 2.3.3
Version française #21 par l'association vBulletin francophone