IDF: Le TDP compliqué du Core M

Publié le 11/09/2014 à 04:11 par
Imprimer

Une des interrogations lors de l'annonce du Core M par Intel la semaine dernière concernait le TDP assez impressionnant annoncé pour ces premiers processeurs Broadwell, à savoir « seulement » 4.5 watts. Une valeur qui pouvait paraitre particulièrement basse pour un processeur qui n'est pas un Atom, particulièrement quand la génération précédente en Haswell ne passait pas sous les 11.5 watts de TDP… mais disposait d'un SDP de 4.5 watts.

A la réponse de savoir quel est exactement le TDP du Core M, il conviendrait de savoir réellement ce que ce mot veut dire. En effet cette valeur a été fortement maltraité par de nombreux constructeurs - principalement pour des raisons marketing - et plus récemment certaines techniques ont été ajoutées dans les processeurs pour jouer sur des paramètres d'inertie thermiques. Ceci sans compter l'ajout du SDP par Intel avec Ivy Bridge que nous n'avions pas manqué de critiquer ici . Qu'est ce donc que le TDP ? Prenons la définition officielle chez Intel sur son site ARK (il s'agit de la définition du Max TDP, soyons précis !) :


On parle ici de la puissance « quasi » maximale qui peut être tirée (du système d'alimentation) pour un temps donné significatif, en faisant tourner des logiciels disponibles dans le commerce. On notera rapidement l'ambiguité du quasi maximal, mais nous attirons votre attention sur le fait que l'on parle ici de puissance tirée du système d'alimentation, cela aura son importance par la suite.

Pourquoi quasi ? La définition fait référence aux Datasheet (volume 1) d'Intel. Regardons celle des Core Y 11.5 Watts de génération Haswell :


On retrouve deux Power Limit (PL1 et PL2). La première Power Limit correspond au « SKU TDP » (le TDP annoncé plus haut en Max TDP) et il s'agit de la valeur moyenne qui ne doit pas être dépassée sur une période donnée (par défaut, une tranche d'une seconde).

PL2 correspond à une surconsommation autorisée pour tirer partie de l'inertie thermique du processeur. Cette valeur est fixée à 1.25x le TDP (ce qui nous vaut la notion de quasi plus haut) et n'est autorisée que durant la montée en température du processeur. Il est possible de dépasser cette valeur pour des pics de 10 millisecondes. Tout ceci est résumé par ce diagramme :

 
La durée maximale d'un passage à PL2 (1.25x le TDP) est par défaut de 1.5x le PL1 Time (qui est par défaut sur Haswell-Y d'une seconde, soit 1.5 secondes au total, mais qui peut être augmentée, Intel recommandant 28 secondes pour les applications mobiles).

Comparons maintenant a la spec Core M :


Plusieurs changements. On notera d'abord l'arrivée d'un PL3 optionnel qui sert a protéger la batterie et qui est désactivé par défaut. Ensuite, si la définition de la valeur PL1 est toujours recommandée comme étant égale au TDP, il n'y a plus de valeur par défaut indiquées pour PL2 (anciennement 1.25x le TDP) ou le PL1 Time (appelée PL1 Tau ici). Le schéma évolue également :


On notera ici que le PL2 est indiqué comme pouvant être soutenu en théorie pendant des centaines de secondes, dépendant de la valeur PL1 Tau sans plus de précisions. Là encore un indice potentiel sur la manière d'optimiser les performances, calculer une moyenne sur un temps plus large laisse de plus fortes opportunités pour obtenir des périodes de système idle pour « maintenir » la moyenne.

Reprenons maintenant le slide qui nous avait tant intrigué plus tôt :


Intel utilise déjà sur les solutions précédentes un driver baptisé DPTF qui peut être utilisé pour reconfigurer le TDP d'une puce (un pilote open source que l'on peut trouver ici ). Jusqu'ici il servait notamment au cTDP (configurable TDP) et aussi à un mode Low Power (LPM).

La nouveauté de Broadwell concerne l'Active Skin Temperature Management qui étend le rôle du driver DPTF pour prendre en compte la température du système, en plus de la température du processeur qui était déjà prise en compte. Dans ce cas, DPTF peut faire varier les valeurs PL1 et PL2 pour « profiter » de l'inertie thermique du châssis (en plus de l'inertie thermique du processeur). En clair, la spécification permet de dépasser le TDP annoncé dans la durée en redéfinissant les valeurs PL1 et PL2 ! De combien, et dans quelles circonstances n'est pas une information que nous avons pu obtenir. On nous aura tout de même indiqué qu'en pic maximal, ces puces pouvaient avoir une consommation de 15 watts sur une durée de 10 millisecondes et que les plateformes devaient être prévues électriquement pour cette charge.


Ainsi, nous avons pu mettre nos mains sur des prototypes de telles plateformes dont l'arrière entier du châssis servait de dissipateur thermique au système, la sonde de « skin température » étant placée sur la carte mère. Si nous n'avons pas pu choisir les benchs qui tournaient sur ces plateformes ou utiliser des outils de monitoring pour évaluer la consommation en pratique, il semblait clair que ces tablettes pouvaient s'échauffer au delà de ce que l'on attendrait pour 4.5 watts en charge.

Bien entendu, l'idée de base d'Intel qui consiste a rajouter une seconde gestion de l'inertie thermique, celle du châssis, en sus de celle du processeur, pour maximiser les performances est loin d'être inintéréssante, pour ne pas dire qu'elle est astucieuse, mais l'on ne peut s'empêcher de noter que cela ne fait que rajouter une couche de flou supplémentaire sur la notion de TDP déjà fortement malmenée, tout en déportant ce gain de performances sur la qualité (ou non) du châssis utilisé. Ainsi, un châssis comme celui de démonstration utilisé par Intel maximise fortement les performances et rien ne dit que les chiffres de performances de benchmarks que l'on nous a montré se retrouveront sur des designs finaux de constructeurs. Si la volonté d'optimiser d'Intel est louable, en pratique nous préfèrerions que le constructeur soit un peu plus clair sur ses spécifications qui deviennent fort difficilement lisibles !

Vos réactions

Top articles