Многоядерные процессоры: каждое «ядро» работает на полной тактовой частоте или на некоторой доле полной тактовой частоты? - PullRequest
8 голосов
/ 12 апреля 2010

Допустим, у вас есть один (1) процессор Intel / AMD x86-64 бит 2 ГГц 8 *. 1001 *

Работает ли каждое из 8 ядер на полных 2 ГГц или каждое ядро ​​работает на некоторой доле тактовой частоты 2 ГГц (например, 250 МГц)?

Ответы [ 4 ]

9 голосов
/ 12 апреля 2010

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

Теперь возможно для ядер, работающих на разных скоростях, в зависимости от фактической нагрузки:

  1. Энергосберегающая технология может индивидуально работатьВыключайте незанятые ядра для экономии энергии при низкой нагрузке (как это часто бывает на 8-ядерных машинах)
  2. Технология энергосбережения также может "разогнать" весь процессор для экономии энергии.
  3. Intel TurboBoost и предстоящий Turbo CORE от AMD позволяют одному из ядер динамически разгоняться в очень распространенном случае, когда один поток или процесс привязывает ЦП.

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

5 голосов
/ 12 апреля 2010

Первый, часы - это вход, генерируемый кварцевым генератором, который «впрыскивается» в процессор, и он используется для синхронизации всей совокупности транзисторов ... в то время как для разных частей оборудования могут использоваться разные часы тот, который управляет процессором (и каждое внутреннее ядро ​​одинаково).

Боковой узел: некоторые продвинутые процессоры могут отключать некоторые ядра, потому что они в данный момент не работают. Обычно это достигается за счет масштабирования базовой тактовой частоты в несколько раз, но это просто для экономии энергии.

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

2 голосов
/ 12 апреля 2010

При полной мощности все они должны работать на частоте 2 ГГц, я думаю. Однако это не позволяет точно создать процессор с частотой 16 ГГц, поскольку однопотоковая однопроцессная программа, работающая на 100% ЦП, сможет использовать только один. Тем не менее, 8 ядер 2 ГГц могут быть лучше, чем одно ядро ​​16 ГГц, когда рабочая нагрузка хорошо разделена, поскольку каждое ядро ​​получает свой кэш и т. Д. С практической точки зрения наличие 8 ядер 2 ГГц означает, что если одна программа работает на 100%, не будет замедлять работу вашей системы (если только она не использует все 8 ядер).

Обратите внимание, что современное оборудование (с надлежащей поддержкой ОС) при низкой рабочей нагрузке обычно снижает тактовую частоту и отключает ядра для экономии энергии. Последнее может быть не так верно сегодня, но это произойдет в будущем.

0 голосов
/ 07 октября 2014

В Sandy Bridge и Ivy Bridge разные ядра не могут работать на разных скоростях одновременно. Кэш-шина L3 работает на той же тактовой частоте, что и ядра, поэтому для предотвращения проблем с синхронизацией все они должны либо работать на этой скорости, либо отключаться.

Источник: http://www.anandtech.com/show/3922/intels-sandy-bridge-architecture-exposed/4

...