Pourquoi la production de chaleur augmente-t-elle à mesure que la fréquence d'horloge d'un CPU augmente?

19

L'ensemble du débat multicœur m'a fait réfléchir.

Il est beaucoup plus facile de produire deux cœurs (dans un seul paquet) que d'accélérer un cœur d'un facteur deux. Pourquoi est-ce exactement cela? J'ai googlé un peu, mais j'ai trouvé la plupart du temps des réponses très imprécises provenant de tableaux de pointage qui n'expliquent pas la physique sous-jacente.

La tension semble avoir le plus d'impact (quadratique), mais dois-je exécuter un processeur à une tension plus élevée si je veux une fréquence d'horloge plus rapide? J'aime aussi savoir pourquoi exactement (et combien) de chaleur produit un circuit semi-conducteur lorsqu'il fonctionne à une certaine vitesse d'horloge.

Nils
la source
il y a un débat multicœur? Je pensais que la loi de Murphy s'épuisait et que les gars de l'arcade ne pouvaient rien trouver d'autre.
7
La loi de Moore. La loi de Murphy ne s'épuisera qu'au pire moment possible. :-)
O. Jones
Il y a cependant un élément de vérité dans le commentaire de Gary. À ce stade, le nombre de transistors est suffisamment élevé pour que, pour les plus gros processeurs, les concepteurs puissent tout mettre sur la puce au lieu d'avoir à choisir, et l'ajout de cache finit par entraîner des rendements décroissants. Les gains de 10 à 20% avec les nouvelles architectures indiquent que les concepteurs parviennent toujours à modifier les performances, mais il n'y a probablement rien de révolutionnaire qui pourrait être mis en œuvre s'il y avait plus de transistors disponibles à dépenser.
Dan Neely

Réponses:

35

Chaque fois que l'horloge sonne, vous chargez ou déchargez un tas de condensateurs. L'énergie pour charger un condensateur est:

E = 1/2*C*V^2

C est la capacité et Vla tension à laquelle elle a été chargée.

Si votre fréquence est f[Hz], alors vous avezf cycles par seconde, et votre puissance est:

P = f*E = 1/2*C*V^2*f

C'est pourquoi la puissance augmente linéairement avec la fréquence.

Vous pouvez voir qu'il augmente quadratique avec la tension. Pour cette raison, vous voulez toujours fonctionner à la tension la plus basse possible. Cependant, si vous souhaitez augmenter la fréquence, vous devez également augmenter la tension, car les fréquences plus élevées nécessitent des tensions de fonctionnement plus élevées, de sorte que la tension augmente linéairement avec la fréquence.

Pour cette raison, le pouvoir monte comme f^3(ou comme V^3).

Maintenant, lorsque vous augmentez le nombre de cœurs, vous augmentez essentiellement la capacité C . Ceci est indépendant de la tension et de la fréquence, donc la puissance augmente linéairement avec C. C'est pourquoi il est plus économe en énergie d'augmenter le nombre de cœurs que d'augmenter la fréquence.

Pourquoi avez-vous besoin d'augmenter la tension pour augmenter la fréquence? Eh bien, la tension d'un condensateur change en fonction de:

dV/dt = I/C

Iest le courant. Ainsi, plus le courant est élevé, plus vous pouvez charger rapidement la capacité de la grille du transistor à sa tension "on" (la tension "on" ne dépend pas de la tension de fonctionnement), et plus vous pouvez activer le transistor rapidement. Le courant augmente linéairement avec la tension de fonctionnement. C'est pourquoi vous devez augmenter la tension pour augmenter la fréquence.

Nathan Fellman
la source
7
Les transistors ont une capacité dynamique. Pour "ouvrir" un transistor, vous devez charger sa capacité de grille.
Nathan Fellman
1
Je n'ai même pas eu de fuite, mais cela fonctionne à peu près de la même manière. C'est plus comme une sorte de résistance, et moins comme un condensateur, donc il consomme de l'énergie basée sur v ^ 2 / r à la même fréquence f.
Nathan Fellman
1
Vous vous trompez. Il s'agit à 100% de capacité. La capacité est chargée et déchargée via la résistance source-drain, ce qui n'est certainement pas une fuite, mais qui consomme l'énergie que vous avez dépensée pour charger et décharger les condensateurs. De plus, ce n'est pas que ce ne soient en aucun cas des condensateurs idéaux. Ce sont d'abord des condensateurs du monde réel, deuxièmement des condensateurs MOS dont le comportement est très différent des condensateurs ordinaires, ne serait-ce que parce que leur capacité dépend de la tension actuelle.
Nathan Fellman
3
ok ... la capacité n'a rien à voir avec la conversion de chaleur, mais elle a à voir avec la consommation d'énergie, car vous devez investir 1 / 2CV ^ 2 pour charger le condensateur. Cette énergie provient d'une source d'alimentation, donc chaque fois que vous chargez le condensateur, vous dépensez 1 / 2CV ^ 2 de cette source. Rien n'empêche cette source de s'échauffer. La capacité en soi n'est pas à blâmer. L'environnement dans lequel se trouve le condensateur est à blâmer.
Nathan Fellman
1
@Gary Vous blâmez la capacité parce que la chaleur est proportionnelle à la capacité. Disons que vous devez augmenter la tension d'un transistor de 0,2 V à 0,75 V en un milliardième de seconde à partir d'une source de 0,9 V. La puissance que vous utilisez pour cela dépend linéairement de la résistance que le courant doit traverser et de la capacité de la grille. Si la capacité était nulle, aucun courant n'aurait besoin de traverser la résistance.
David Schwartz
7

Fondamentalement:

  • Un transistor commute plus rapidement lorsque vous lui appliquez plus de tension.
  • les circuits intégrés modernes consomment le plus d'énergie lors du passage d'un état à l'autre (sur le tick d'horloge), mais ne consomment pas d'énergie pour rester dans le même état (eh bien, il y a des fuites, donc pas exactement pas d'énergie) donc plus vous passez rapidement, le plus vous commutez par seconde, plus vous consommez d'énergie.

Un très bon livre sur tous les détails de l'architecture du processeur: Organisation et conception informatique par David A. Patterson, John L. Hennessy.

Guillaume
la source
C'est un livre classique.
est-ce le gouverneur de l'État de New York?
Nathan Fellman
5

Chaque fois qu'un transistor change d'état, du courant est dépensé. Une fréquence plus élevée signifie une commutation plus rapide, plus de courant gaspillé. Et l'impédance de tout le convertit en chaleur. P = I ^ 2 * R et tout ça. Et P est V ^ 2 / R. Dans ce cas cependant, vous voudriez vraiment que le V et le I moyen au fil du temps soient capables de calculer, et ce serait quadratique en tension et en courant à la fois.

gtrak
la source
La fuite est moins importante que la puissance de commutation réelle.
Nathan Fellman
désolé, je changerai «fuite» en «gaspillage»
"Et l'impédance de tout le convertit en chaleur" - en fait, pas l'impédance. Juste la résistance. Les parties imaginaires de l'impédance ne sont pas converties en chaleur.
Nathan Fellman
2

1) deux cœurs contre l'accélération d'un cœur
Pour accélérer un cœur, vous avez besoin d'une nouvelle technologie pour accélérer les transistors passant d'un état à un autre. Pour ajouter un autre noyau, vous avez juste besoin de plus des mêmes transistors.

2) Chaleur
La dissipation de puissance est sous forme de chaleur. Puissance = tension * courant. Tension = résistance * courant. Puissance = Tension ^ 2 / Résistance. La chaleur dissipée est donc proportionnelle à la tension au carré.

Robert
la source
Oui, je sais que la chaleur augmente quadratique avec la tension, ce que je ne comprends pas, c'est quelle influence la tension a sur la vitesse d'horloge? Ai-je besoin d'une tension plus élevée pour une vitesse d'horloge plus élevée?
Je sais que les PIC de Microchip ont un graphique pour Voltage vs Frequency. Il y a une tension minimale que la puce fonctionnera à basse fréquence. C'est une échelle linéaire à la tension maximale et à la fréquence maximale.
Robert
2
@ Nils, une tension plus élevée donne des transitions et des états plus nets et moins ambigus, et rend plus probable qu'un 1 sera interprété comme un 1 et non comme un 0. Et une fréquence plus élevée rend les transitions moins carrées. N'oubliez pas que les ondes carrées n'existent pas.
tu veux dire plus carré
Nathan Fellman
1

Eh bien, dans l'énergie électrique, il existe deux types de puissance, la puissance réactive et la puissance réelle. Certaines personnes appellent la puissance réactive la puissance dynamique. La puissance réactive n'est jamais consommée ni perdue. Par exemple, si un condensateur idéal est connecté à une source de tension alternative par des fils sans perte idéaux, le condensateur se chargera et se déchargera, en prenant l'énergie du générateur en un cycle et en renvoyant l'énergie au générateur au cycle suivant. La perte nette est nulle.

Cependant, si les fils sont non idéaux et résistifs, alors l'énergie est dissipée dans les fils pendant la charge et la décharge du condensateur. Cette puissance dissipée est une perte de puissance réelle et ne peut pas être récupérée. À mesure que la fréquence d'horloge augmente, le taux de charge et de décharge augmente, ce qui augmente la perte de puissance dans les fils.

Les grilles des transistors se comportent comme des condensateurs. À mesure que la fréquence d'horloge augmente, une plus grande puissance réactive est fournie aux condensateurs. La fraction perdue dans les fils résistifs augmente également.

Weng Cho
la source
0

Une chose non mentionnée jusqu'à présent - les puces deviennent plus rapides et le processus de lithographie pour les rendre réduit les composants. Ils sont devenus si petits qu'ils font quelques atomes de large dans certains cas. Il y a maintenant une fuite de courant importante, qui se dissipe généralement sous forme de chaleur.

Rich Homolka
la source
0

Pour commuter rapidement l'état d'un circuit, il faut plus de courant que pour le commuter lentement. Pour atteindre ce courant, vous avez besoin d'une tension plus élevée et / ou de composants plus gros et plus gourmands en énergie. Et, bien sûr, les composants plus gros nécessitent plus de courant d'entraînement, ce qui provoque un effet boule de neige.

(Fait intéressant, il y avait un article dans le dernier Scientific American (juillet 2011) qui couvre ce sujet pour le cerveau humain. Mêmes principes, et une façon dont le cerveau humain est plus puissant est de partitionner le cerveau en sous-processeurs séparés, pour ainsi dire.)

Daniel R Hicks
la source