Чому працюючі процесори складніше використовують більше електроенергії?


16

Ще в туманах часу, коли я почав кодувати, принаймні, наскільки мені відомо, процесори використовували фіксовану кількість енергії. Не було такого поняття, як процесор "простоював".

У наші дні існують всілякі технології зниження енергоспоживання, коли процесор не дуже зайнятий, в основному за рахунок динамічного зменшення тактової частоти.

Моє запитання: чому біг з меншою тактовою частотою використовує менше енергії?

Моя ментальна картина процесора є еталонною напругою (скажімо, 5 В), що представляє собою двійкову 1, і 0 В, що представляє 0. Тому я схильний думати про постійне застосування 5 В на всій мікросхемі, при цьому різні воріти логіки відключають цю напругу коли "вимкнено", що означає постійну кількість потужності. Швидкість, з якою ці ворота включаються та вимикаються, схоже, не має відношення до використовуваної потужності.

Я не сумніваюся, що це безнадійно наївна картина, але я не інженер-електрик. Чи може хтось пояснити, що відбувається насправді за допомогою частотного масштабування та як це економить енергію. Чи є інші способи, якими процесор використовує більшу чи меншу потужність залежно від стану? наприклад, чи використовує вона більше енергії, якщо відкрито більше воріт?

Чим відрізняються мобільні процесори / низької потужності процесори від настільних родичів? Вони просто простіші (менше транзисторів?), Чи є якась інша принципова різниця в дизайні?


8
Ви помиляєтеся, процесори ніколи не використовували однакову кількість енергії протягом часу, вона завжди була мінливою. Значно спрощуючи речі, можна припустити, що енергія витрачається лише на перемикання одного значення тригера. Тому чим більше обчислень проводиться в секунду, чим більше внутрішніх регістрів змінюють свої значення, тим більше витрачається потужність.

2
Якщо я добре пам’ятаю свою електроніку, більшість «витраченої» енергії (вона ж «тепло») - це витік (він же (невеликий) кількості струму, який не протікає там, де не має відбуватися потік). Це трапляється більше, коли ви a.) Використовуєте більш високу напругу і b.) Перемикання на більш високих частотах. Більшість сучасних процесорів знижують і напругу, і частоту в станах з низькою потужністю (і навіть якщо вони знижують лише один з них, це все-таки виграш).

3
@ SK-логіка: Багато історичних процесорів використовують логіку ECL, яка споживає приблизно стільки ж енергії, незалежно від тактової частоти. Сеймур Крей створив CDC 8600, Cray-1, Cray X-MP, Cray Y-MP, Cray T90 для використання ECL. Логічна стаття Wikipedia ECL перераховує ще кілька інших компаній. Ви говорите, що цих машин ніколи не було, або ви говорите, що вони не вважаються процесорами?
davidcary

Процесори також економлять енергію, використовуючи інструкцію щодо зупинки. Ядро операційної системи може встановити таймер, щоб розбудити процесор і виконати цю інструкцію, щоб змусити процесор заснути.
Оскар скаго

Відповіді:


24

Швидкість, з якою ці ворота включаються та вимикаються, схоже, не має відношення до використовуваної потужності.

Тут ви помиляєтесь. В основному кожен затвор - це конденсатор з неймовірно крихітною ємністю. Увімкнення та вимкнення його за допомогою "підключення" та "відключення" напруги переміщує неймовірно крихітний електричний заряд у ворота або назовні - ось що змушує його діяти інакше.

А рухомий електричний заряд - це струм, який використовує енергію. Всі ті крихітні струми від мільярдів воріт, що перемикаються мільярди разів за секунду, складають зовсім небагато.


Ось що відбувається в пам'яті - пам'ять DRAM. Пам'ять від процесора (кеш-пам'яті) використовує SRAM, який не реалізований з конденсаторами ...

7
@ m3th0dman: Я не говорю про елементи, призначені бути конденсаторами. Кожен транзистор, кожен елемент всередині процесора має ємність.

7

Як зазначає коментар SK-логіки, більша частина енергії реально витрачається на перемикання фліп-флопа, а не на стаціонарний стан.

Для динамічного скорочення є дві основні речі, які можна зробити IIRC.

  1. якщо цілі області мікросхеми не синхронізуються, ви потенційно можете повністю вимкнути живлення для цих областей

  2. Дерево годинника саме по собі є одним з найбільших стоків електроенергії в системі, значною мірою, оскільки це найшвидша частина комутації системи. Тож зменшення потужності у самому дереві годинника є суттєвим.


Що таке дерево годинника?
акалтар

2
@akaltar - загальна кількість всіх ліній, які поширюють тактовий сигнал на кожен елемент процесора, який потрібно синхронізувати з тактовою частотою.
Майкл Боргвардт

6

Потужність, яку споживає електронна схема, має дві компоненти:

  • витік, який більш-менш залежить від постійної частоти і буде залежати від технології та робочої напруги;
  • потужність комутації, яка залежить від частоти (це пов'язано з завантаженням і вивантаженням різних ємностей, транзисторів і проводів)

Щоб зменшити споживання, дизайнери процесорів використовують кілька методів:

  • зміна частоти в залежності від навантаження (це буде діяти тільки на потужність комутації)
  • зменшення потужності або навіть вимкнення частин ланцюгів, коли вони не потрібні

Ці методи в результаті призводять до того, що, залежно від вашого навантаження, вам може бути краще від споживання енергії POV, або зменшити частоту, або зробити «спринт» на повній швидкості, а потім вирізати підмножину ланцюгів.


Можливо також, що зменшення частоти дозволяє знизити робочу напругу (оскільки транзистори трохи повільніше), щоб зменшити витік.
TEMLIB

0

Біг із меншою тактовою частотою не впливає на енергію, необхідну для виконання фіксованого завдання. Це навіть може збільшити необхідну енергію, якщо ви враховуєте протікання і зможете повністю відключитися.

Якщо менша тактова частота заощаджує енергію, це також можливість зменшити робочу напругу. Зниження напруги часто економить достатню кількість енергії, щоб компенсувати необхідність зберігати активність довше.


Я не згоден, Шон. Зниження тактової частоти зменшує всі втрати паразитичного перемикання, що беруть участь у всій тактовій ланцюзі, яка є масовою в типовому процесорі. Мій нетбук Atom працює на частоті 1 ГГц, якщо я душити процесора до 500 МГц він працює кулер і помітно споживає менше енергії від від мережі, і це дійсно впливає на завдання - вона займає в два рази довше , щоб закінчити.
rdtsc

2
@rdtsc Обережно зараз. Шон пише енергію , а не силу .
труба

@rdtsc Ви плутаєте силу та енергію. Перше замовлення для конкретного завдання потребуватиме фіксовану кількість тактових годин. Подумайте, як батарея відповість на ваше завдання в двох різних робочих точках.
Шон Хуліхане

Ага так. Все ще працюю над першою чашкою кави. :) Мені довелося б це виміряти, але я думаю, що використана енергія буде фактично дещо більшою, з меншою тактовою частотою, оскільки сучасний процесор має стільки періодичних подій, які можна обробляти за секунду. Їх буде більше для повільних годин, а більше означає довший час для виконання завдання.
rdtsc

Деякі пов'язані з фоном читання anandtech.com/show/9330/exynos-7420-deep-dive/6
Шон Хуліхан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.