Полезность многоядерности в контексте энергоэффективных вычислений

562
intuited

Я рассматриваю варианты нового портативного ПК. Я бы хотел, чтобы потребление энергии было минимальным, при этом я мог запускать пакетные задания как можно быстрее. Пакетные задания, которые я обычно могу распараллелить, используют xargsв тех случаях, когда сама программа обработки не знает, как использовать преимущества многоядерности.

Так что низковольтный многоядерный чип кажется довольно привлекательным. Однако, если двухъядерный чип будет иметь в два раза больше (минимальное) энергопотребление, чем одноядерный чип, я мог бы вместо этого выбрать одно ядро ​​с более высокой максимальной тактовой частотой. Могут ли многоядерные процессоры временно отключать одно или несколько ядер, чтобы снизить энергопотребление?

Каков типичный штраф за энергопотребление при добавлении ядра (или трех ядер для четырехъядерных процессоров)? И в отличие от этого, каковы типичные потери минимального энергопотребления для увеличения скорости обработки на ядро? Под «minumum» я подразумеваю, что я бы хотел, чтобы машина использовала как можно меньше энергии, когда процессоры уменьшаются до минимальной частоты.

2
портативный компьютер == labtop? или маленький / легкий ПК? madmaze 13 лет назад 0

2 ответа на вопрос

2
bubu

В настоящее время технология процессоров действительно продвинута. Когда вам нужно одно ядро, вы можете просто запустить его на одном ядре и припарковать остальные (по крайней мере, на Intel cpus).

Причина многоядерных вычислений заключается в том, что для данной архитектуры (например, ядра i7), данного процесса (например, 45 нм), данного выхода, если вы увеличите частоту, на верхнем конце спектра мощность будет увеличиваться гораздо больше, чем линейно.

e.g. i3 processor: (**system** peak power) i3-530 @ 2.93 GHz = 127 Watt i3-530 @ 3.3 GHz = 133 Watt i3-530 @ 4.4 GHz = 171 Watt 

Обратите внимание, что измеряется пиковая мощность системы, а не пиковая мощность процессора. Принимая мощность системы в режиме ожидания (80 минус мощность ~ 5-7 Вт, которую потребляет процессор), вы получаете около 54-100 Вт пиковой мощности процессора. разгон с 2,9 ГГц до 4,4 ГГц - это разгон ~ 50%, но мощность почти в два раза.

Для большинства процессоров потребительского уровня, продаваемых сегодня, частота находится на довольно низком уровне (например, на 2,93 ГГц выше), так что скромный разгон, как правило, не приведет к значительному увеличению пиковой мощности, но на более высоком конце спектра (рынок процессоров для энтузиастов) вы собираются в более крутой части кривой.

Многоядерные процессоры обеспечивают относительно линейный прирост производительности (обычно 0,6–0,7 на дополнительное ядро) при обычно меньшем энергопотреблении.

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

ps <rant> если у вас возникла проблема, вам нужно подумать о распараллеливании ее, чтобы она работала разумно, возможно, портативный компьютер не будет решением проблемы. как насчет того, чтобы подключиться к энергосберегающему компьютеру дома, чтобы выполнить какое-то удаленное перехват номера? </ rant>

Спасибо, довольно информативно. В моем случае прирост производительности, как правило, составляет примерно 1x, поскольку во многих случаях для каждого ядра будет выполняться отдельный процесс. intuited 13 лет назад 0
Мне действительно не нужна коробка для рабочего стола; Я выясняю, что нужно обновить с моей нынешней машины Pentium M, чтобы я мог превратить ее в файловый сервер. Я считаю, что использование его с частотой 600 МГц более или менее адекватно для большинства задач, и что исключения, как правило, являются парализуемыми вещами; например, преобразование каталога, заполненного файлами .mp3, в формат .ogg. intuited 13 лет назад 0
1
nhinkle

В любом случае, в наши дни практически нет одноядерных процессоров. Если вы посмотрите на спецификатор Intel, вы увидите, что Core 2 Solo потребляет значительно меньше энергии (посмотрите на максимальный TDP), чем четырехъядерный i7, а низковольтный двухъядерный Core i7 UM использует лишь немного больше, чем ядро 2 соло, и будет значительно быстрее. Одноядерные процессоры в наши дни не стоят.

Все современные процессоры могут отключать ядра и переходить в режим пониженного энергопотребления. Процессоры Intel называют это SpeedStep, и в основном он работает на процессоре с гораздо меньшей тактовой частотой и работает на более высокой тактовой частоте только тогда, когда эта мощность процессора действительно необходима.

Похожие вопросы