Conscient que le facteur énergétique s’alourdit de plus en plus dans la balance d’achat d’équipement informatique, Intel se doit d’innover dans ce domaine.
Innover, le mot n’est pas trop fort puisqu’il faut mettre sur pied une architecture fonctionnelle pour combattre le gaspillage, optimiser les besoins et garantir un accroissement des performances. Ce dernier point est et reste l’élément pour l’acquisition de nouveaux matériels.
Dans une configuration informatique, le processeur, la solution graphique et le système de stockage représentent les grandes sources de demandes énergétiques.
Un processeur respectueux de l’environnement est avant tout une puce capable de minimiser son gaspillage énergétique.
Une gestion par core et non globale grâce au PCU
Avec la multiplication des cores de calcul et l’introduction du Core i7, Intel implémente une gestion, non pas globale du processeur mais beaucoup plus fine attachée à l’activité de chaque core. Une similitude grossière serait de dire que dans un appartement de 4 pièces rien ne sert de laisser allumer 3 pièces si nous sommes dans la quatrième.
Cette gestion est organisée par un centre nerveux appelé PCU pour Power Control Unit. Il est autonome et muni de capteurs d’informations divers informant en continu sur la fréquence, la température et le voltage de chaque core.
En reprenant l’exemple de notre appartement, il s’agit d’une sorte de compteur principal capable de surveiller l’activité de chaque pièce grâce à différents détecteurs (chaleur, mouvement, bruit …) et d’allumer ou d’éteindre en fonction de certains critères.
Une gestion fine et précise en fonction de plusieurs paramètres.
La gestion ne se contente pas seulement d’éteindre ou d’allumer mais elle est également capable de temporiser l’offre. Dans le cas de notre appartement témoin, il s’agirait de pouvoir baisser progressivement la lumière suivant l’activité des personnes ou au contraire d’allumer au plein potentiel en cas de besoin.
Le procédé est possible puisque le Core i7 dispose de 4 cores avec leur propre PLL (voir diagramme au dessus sur le PCU) de telle manière que des fréquences et des tensions différentes peuvent être appliquées pour chaque core par le PCU. Nos quatre pièces peuvent alors être allumées plus au moins efficacement et individuellement.
Voici par exemple deux fréquences relevées par CPU-Z suivant l’activité d’un Core i7. Elles correspondent à celles du core 0 (4 au total).
D’une fréquence d’origine à 2,6 GHz, le core 0 passe à 2,4 GHz.
Le core 0 n’étant pas sollicité continue de diminuer sa fréquence : 1,6 GHz ici. Pour l’occassion, le voltage baisse également.
Pour les plus curieux ! .
Pour être un peu plus technique, l’objectif d’Intel est de minimiser la consommation globale du processeur surtout lorsque ce dernier n’est pas utilisé ou que partiellement utilisé. Cet état de processeur dit au repos se nomme “Idle” dans le jargon informatique.
Pour pouvoir abaisser la consommation, il y a plusieurs actions possibles. Diminuer la fréquence, la tension ou encore ne plus alimenter certaines parties du processeur. En fonction de l’activation de ces différentes possibilités, des C-State sont définis :
- Le C0 est un processeur en état normal d’alimentation,
- Le C1, C2 représente un arrêt des pipelines et de la plupart des horloges du core
- Le C3 est synonyme d’un arrêt des horloges restant du core, les tensions peuvent aussi être réduites via les modes
- Et enfin le C4, C5 et C6 correspondent à une dimension de tension du core
Intel met en lumière qu’avec une alimentation globale du processeur il y a des inconvénients pour un processeur multi-core.
Si la tension est commune à tous les cores, sa diminution affecte certes tous les cores présents mais sa gestion dépend alors de leur état commun, ils doivent être tous dans un même état C0 par exemple.
Avec l’architecture Nehalem, un interrupteur d’alimentation intégré (Integrated Power Gate) est mis en place après le régulateur de tension de chaque core.
Ainsi il devient possible de permettre un arrêt de l’alimentation de chaque core. Selon Intel, en état C6, la consommation est proche de zéro.
Une alimentation également optimisée pour le QPI et le PCIe
L’état général C6 du Core i7 correspond alors à un C6 de chaque core mais aussi à une baisse de la consommation des autres parties du processeur (partie un core) comme le contrôleur mémoire, le QPI et un passage en basse tension des I/O.
Le paramétrage de la gestion de l’alimentation sur notre carte mère Intel DX58S0 dévoile plusieurs états de fonctionnement nommés L0, L0s et L1 pour le PCIe.
L’activation de tout ce petit monde est à faire au niveau du BIOS, il suffit de se rendre dans le menu “Alimentation“.
Nous retrouvons en supplément de la technologie SpeedStep et CE1 déja présente avec le Core 2, les lignes :
- CPU C State,
- QPI Power Management,
- PCIe ASPM L0s,
- PCIe ASPM L1.
En activité normale, le PCIe est en L0. L0s autorise l’arrêt de plusieurs lignes tout en conservant un passage en L0 rapide tandis que L1 met en berne l’ensemble mais occasionne un temps de latence pour le passage en L0 plus conséquent.
L’activation du QPI Power Management et l’autorisation des états L0s et L1 pour le PCIe ne sont pas sans concéquence.
Voici les relevés de consommation électrique avec notre Core i7 920 suivant différents paramétrages. Elles correspondent à la consommation globale de notre plateforme :
- Carte mère Intel DX58S0,
- Core i7 920,
- 3 x 1 Go de DDR3,
- HDD Seagate Barracuda 7200.11 de 320 Go,
- Carte graphique Radeon HD 3450,
- Alimentation Be Quiet Straight Power E6 labélisée 80Plus de 350 Watts
- Lecteur graveur Blue Ray.
Comme nous pouvons le voir en mode Idle nous avons une baisse importante avec 18,5 Watts d’économisés. Lorsque le processeur est sollicité l’écart diminue pour se stabiliser dans une fourchette de 6 à 8 Watts tout de même.
Il est intéressant de constater qu’en mode Idle l’activation de la gestion du QPI permet de gagner 14 Watts environ là où l’autorisation des états L0s et L1 du PCIe économise 4,4 Watts.
Au final, la gestion de l’alimentation du QPI permet de gagner 14 Watts au repos et les états L0s et L1 presque 5 Watts soit au total plus de 18 Watts. En mode burn CPU, l’économie se situe aux alentours de 7 Watts en moyenne.
Comme nous l’avons dit, les états L1 et L0s coupent l’alimentation des lignes PCIe. Les économies sont bien réelles mais avons-nous un impact sur les performances?
Nous avons installé une GeForce 9600 GT 512 Mo de MSI et lancé plusieurs applications : 3Dmark 2006, 3DMarch Vantage, Crysis et Far Cry 2.
La résolution est en 1280 x 1024 avec les détails sur High pour Crysis, Very High pour Far Cry 2. Chaque test est répété trois fois avec l’activation ou non de la gestion QPI et des états L0s et L1 . Voici les résultats.
Nous obtenons sous les benchmarks 3DMark des différences infimes et indétectables à l’usage.
Par contre ici, il y a une baisse du nombre d’images par seconde. Sous Far Cry II, nous passons de 42,29 FPS à 40,75 FPS et pour Crysis de 28,91 FPS à 26,39 FPS soit respectivement -3,6 % et -8,7%.
Intel introduit de l’overcloking dans les économies d’énergie ?
Pour terminer, rappelons qu’un processeur possède une enveloppe thermique connue sous la dénomination de TDP. Elle représente en premier lieu une valeur cruciale pour les fabricants de ventirads. Pour les particuliers et professionnels, elle donne une information sur la limite maximale de la consommation énergétique.
La pratique de l’overclocking, véritable sport institutionnel, a des conséquences immédiates sur la consommation électrique. Pour vous en convaincre, voici un de nos relevés avec un Core 2 Quad Q9450 à fréquences d’origine, c’est-à-dire à 2,6 GHz, puis à 3,2 GHz et enfin à 3,6 GHz.
Le bilan est parlant !
La consommation augmente de 50 Watts au repos et de 71,9 Watts en burn entre un processeur à fréquence d’origine (2,6 GHz) et overclocké à 3,6 GHz. L’accroissement de 71 Watts en burn est peut être justifiable en rapport à l’augmentation des performances mais les 50 Watts au repos, nous cherchons encore.
Le Core i7 semble mettre un frein à cette surconsommation en état d’overclocking, du moins un ralentissement seulement avec la technologie Intel Turbo Boost.
Cette dernière fonctionne de façon autonome et peut pousser la fréquence de certains cores de calcul tout en respectant la limite du TDP (130 Watts) calculé en continu.
L’exécution du benchmark CPUBurn non multicore sollicite uniquement le core 0. En respectant la limite du TDP, la technologie TurboBoost booste de 11 % la fréquence (2,6 GHz à 2,93 GHz).
Voici pour illustrer l’impact du TurboBoost plusieurs captures d’écran de CPU Z en fonction de l’activité du Core i7 920.
Depuis le BIOS, la modification du TDP maximum est possible avec uniquement les modèles Extreme !
Pour en finir avec notre analogie d’un appartement avec 4 pièces, le TDP peut représenter en quelque sorte la puissance maximale disponible délivrée par le compteur électrique général. Plusieurs pièces peuvent alors être éteintes ou disposées d’un éclairage faible tandis que d’autres peuvent dépasser leurs éclairages d’origine (overclocking), le tout sans dépasser la puissance maximale supportée par le compteur général.
La technologie Intel Turbo Boost apparaît comme le garant d’un overclocking soucieux de la dépense énergétique.