Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим

в 7:00, , рубрики: cpu, intel, pl1, pl2, Производство и разработка электроники, Процессоры, теплоотвод, энергопотребление

Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим - 1

В последнее время сообщество любителей самостоятельной сборки ПК пронизано темой энергопотребления. У новейших восьмиядерных процессоров от Intel показатель TDP заявлен в 95 Вт, однако пользователи наблюдают, как те потребляют 150-180 Вт, что совершенно не имеет смысла. В этой инструкции мы объясним вам, почему это происходит, и почему это доставляет столько проблем авторам обзоров железа.

Что такое TDP (Thermal Design Power, требования к теплоотводу)

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

Но, строго говоря, TDP относится к возможностям кулера по рассеиванию энергии. TDP – это минимальная возможность кулера, гарантирующая указанную эффективность. Часть энергии рассеивается через сокет и материнскую плату, а значит, рейтинг кулера может быть ниже TDP, но в большинстве обсуждений TDP и энергопотребление обычно означали одно и то же: сколько энергии процессор потребляет под нагрузкой.

Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим - 2

В рамках системы TDP можно установить в прошивке. Если процессор использовал TDP в качестве максимального ограничения по мощности, то мы бы увидели, как та же измерительная программа выдаёт подобные графики для процессоров высокой мощности с несколькими ядрами.

В последние годы Intel использовала именно такое определение TDP. Для любого заданного процессора Intel гарантировала рабочую частоту (базовую частоту) для конкретной мощности – TDP. Это значит, что процессор типа 65 Вт Core i7-8700, с обычной частотой 3,2 ГГц, и 4,7 ГГц в турбо-режиме, гарантированно будет потреблять до 65 Вт только при работе на частоте в 3,2 ГГц. Intel не гарантирует эффективной работы выше указанных 3,2 ГГц и 65 Вт.

Кроме базовых показателей, Intel также использует турбо-режим. Что-то вроде Core i7-8700 может показывать в турбо-режиме 4,7 ГГц, и потреблять при этом гораздо больше энергии, чем процессор, работающий на 3,2 ГГц. Турбо-режим для всех ядер на процессоре Core i7-8700 работает на частоте 4,3 ГГц – куда как больше гарантированной 3,2 ГГц. Ситуация усложняется, когда турбо-режимы не опускаются до базовой частоты. То есть, если процессор будет работать с постоянным превышением TDP, купленный вами кулер на 65 Вт (или тот, что шёл в комплекте) станет узким местом. Если вам нужно больше быстродействия, такой кулер надо выкинуть и взять что-то получше.

Однако производитель вам этого не сообщает. Если охлаждения для турбо-режимов будет недостаточно, а процессор достигнет температурного потолка, то большая часть современных процов перейдут в режим ограничения мощности, уменьшив быстродействие с тем, чтобы оставаться в рамках заданного энергопотребления. И в результате быстрый процессор не достигает пределов своих возможностей.

Значит, TDP ничего не значит? Почему это стало проблемой только сейчас?

За последнее десятилетие методика использования термина TDP не поменялась, а вот процессоры начали по-другому использовать свой энергетический бюджет. Недавнее появление шести- и восьмиядерных потребительских процессоров с частотами за 4 ГГц означает, что новые процессоры с большой загрузкой превышают заявленное TDP. В прошлом мы видели, как четырёхядерные процессоры с обозначенным рейтингом в 95 Вт использовали только 50 Вт даже под полной нагрузкой в турбо-режиме. И если мы добавляем ядра, а обозначение TDP на упаковке не меняем, то что-то должно поменяться.

Тайные цифры, которых нет на упаковке

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

Для простоты можно следить за тремя важными значениями. Intel называет их PL1 (уровень энергии 1), PL2 (уровень энергии 2) и T (Tau).

Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим - 3

PL1 – эффективное равномерное ожидаемое потребление энергии в долгосрочной перспективе. По сути, PL1 обычно определяется, как TDP процессора. То есть, если TDP равно 80 Вт, то PL1 равно 80 Вт.

PL2 – краткосрочное максимальное потребление энергии процессором. Эта величина выше PL1, и в это состояние процессор переходит под нагрузкой, что позволяет ему использовать турбо-режимы вплоть до максимального значения PL2. Это значит, что если Intel определила несколько турбо-режимов у процессора, они будут работать, только когда PL2 доходит до максимального энергопотребления. В режиме PL1 турбо не работает.

Tau – временная переменная. Она определяет, как долго процессор должен оставаться в режиме PL2 перед тем, как откатиться на PL1. Tau не зависит от мощности и температуры процессора (ожидается, что при достижении температурного ограничения будет использоваться другой набор сверхнизких значений напряжения и частоты, а система PL1/PL2 перестаёт работать).

Вот официальные определения от Intel:

Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим - 4

Давайте разберём ситуацию большой нагрузки на процессор.

Сначала он начинает работу в режиме PL2. Если нагрузка однопоточная, мы должны достичь верхнего значения турбо, которое обозначено в спецификации. Обычно энергопотребление одного ядра не приблизится к значению PL2 всего чипа. Если мы будем продолжать нагружать ядра, процессор отреагирует, уменьшая частоту турбо-режима в соответствии с по-ядерными значениями, определяемыми Intel. Если энергопотребление процессора достигает значения PL2, то его частота изменяется так, чтобы не выходить за рамки PL2.

Когда система находится под серьёзной нагрузкой долгий промежуток времени, «Tau» секунд, прошивка должна перейти на PL1 как на новое ограничение по мощности. Таблицы турбо перестают применяться – они работают только с режимом PL2.

Если потребление выходит за пределы PL1, тогда частота и напряжение изменяются так, чтобы потребление энергии оставалось в этих пределах. То есть процессор целиком уменьшает частоту от состояния PL2 до состояния PL1 на время работы под нагрузкой. Это значит, что температура процессора должна уменьшиться, и это должно увеличить время жизни процессора.

Режим PL1 работает, пока не исчезнет нагрузка, и ядро не перейдёт в состояние бездействия на определённое количество времени (обычно до 5 секунд). После этого режим PL2 снова может быть включён при появлении другой большой нагрузки.

Приведём примеры некоторых величин – Intel перечисляет несколько вариантов в спецификациях различных процессоров. Для примера я взял Core i7-8700K. Для этого проца верно следующее:

PL1 = TDP = 95 Вт
PL2 = TDP * 1.25 = 118.75 Вт
Tau = 8 сек

Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим - 5

В данном случае система должна суметь разогнаться до 119 Вт на восемь секунд, а потом снова откатится назад до 95 Вт. Так работает уже несколько поколений процессоров Intel, и по большей части, это не имело особого значения, поскольку энергопотребление процессора целиком часто оказывалось сильно ниже значения PL1 даже под полной нагрузкой.

Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим - 6

Однако вся ерунда начинается, когда в игру вступают производители материнских плат, поскольку PL1, PL2 и Tau можно настраивать в прошивке. К примеру, на графике выше можно снять ограничения с PL2, а PL1 назначить 165 Вт и 95 Вт.

Мир случайных чисел

В основном я буду говорить о потребительской электронике. Часто PL1, PL2 и Tau тщательно контролируются в таких ограниченных по охлаждению условиях, как ноутбуки или небольшие ПК. Я знаком с несколькими мощными, и в то же время стильными вариантами ПК, у которых PL2 также приравнивали к TDP, чтобы процессор смог немного разогнаться, но не до такой степени, чтобы нагрузка одного-двух ядер выходила за пределы TDP.

Однако в наших обзорах CPU после распространения шестиядерных процессоров мы часто начали видеть цифры гораздо большие, чем PL1 или PL2, и это потребление продолжается сколь угодно долго, если только не выходит за пределы ограничений температуры. Почему это происходит?

В любом современном BIOS, в особенности у основных производителей мат.плат, будут присутствовать настройки по ограничению мощности (краткосрочное и долгосрочное) и длительности. В большинстве случаев по умолчанию пользователю неизвестно, в какое значение они установлены, поскольку там будет написано Auto, что является кодовым обозначением «мы знаем, какое значение им назначить, не волнуйтесь». Производители запишут величины в память и будут их использовать, но пользователь увидит только Auto. В результате можно назначить PL2 в 4096 Вт и сделать Tau очень большим, к примеру, 65535, или -1 (бесконечность – зависит от варианта BIOS). Это означает, что CPU без перерыва будет работать в режиме турбо, пока не превысит температурные ограничения.

Почему процессоры Intel потребляют больше ожидаемого: требования к теплоотводу и турбо-режим - 7

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

Во-первых, это означает, что пользователь может поддерживать турбо-режим постоянно, и каждое ядро будет работать в режиме турбо каждую секунду. Результаты измерений быстродействия будут доставать до небес, в обзорах или когда пользователя меряются показателями, всё выглядит прекрасно,

Во-вторых, продукты для этого и разрабатываются. Intel часто с каждым запуском определяет спецификацию мат.платы по умолчанию (у них даже были свои материнки, которые они продавали в розницу), с определённым количеством фаз питания и с ожидаемым временем жизни. Производители, очевидно, могут внедрять свои варианты: больше фаз питания, более мощные фазы, особый подвод питания для улучшения эффективности, и т.д. Если их плата может поддерживать турбо-режим всех ядер беспрерывно, то почему бы и нет?

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

Так как же правильно, кому доверять, в чём разница?

Intel назначает стандарты для своих запчастей. PL1, PL2, Tau, схема материнки, настройки прошивки – для всего есть значения по умолчанию, рекомендованные Intel. Некоторые из них публичные, например, те, что Intel указывает в документах, некоторые – конфиденциальные (и Intel нам о них не расскажет, как бы мы ни упрашивали). Однако это всё же рекомендованные значения. А по итогам, производители материнских плат могут делать всё, что им заблагорассудится. И они так и делают.

В результате, к примеру, мне тестировать оборудование из-за этого становится сложнее. Разным пользователям захочется, чтобы наши настройки были:
1. Рекомендованными Intel,
2. Как из коробки,
3. Вывернуты на максимум.

И, естественно, рекомендации Intel дадут куда как меньшие показатели, чем «из коробки», а вариант «вывернуты на максимум» говорит сам за себя.

Стоит отметить, что до сих пор во всех тестах во всех обзорах CPU железо запускалось на настройках «из коробки», а не «рекомендованных Intel».

Чтобы дать некий контекст по значениям измерений, мы использовали мощный CPU и
получили следующие результаты в 25-30 секундном тесте с полной нагрузкой:

AnandTech PL2 Tau PL1 Result
Unlimited 4096W 999s 4096W 100%
Intel Spec, 165W 207W 8s 165W 98%
Constant 165W 165W 1s 165W 94%
Intel Spec, 95W 118W 8s 95W 84%
Constant 95W 95W 1s 95W 71%

В последнее время было замечено, что некоторые производители материнских плат меняют свою стратегию по PL1/PL2/Tau, и урезают значение Tau до чего-то разумного, вроде 30 секунд. При запуске измерений скорости на таких материнских платах, пользователи получают результаты меньше, чем обычно, хотя эти результаты оказываются ближе к спецификациям Intel.

Дело в том, что когда на материнских платах стоит значение Auto, производитель обычно не раскрывает точную величину этого значения. В результате описывать работу такого оборудования очень тяжело. А ещё эти значения могут меняться в зависимости от установленного процессора.

Мы обычно проводим тестирования с настройками «из коробки», за исключением памяти, с которой мы используем значения, рекомендованные производителем. Мы считаем, что это наиболее честный способ сообщать читателям о том, на какую скорость они смогут рассчитывать, когда практически никакие настройки не менялись. В реальности это обычно означает, что PL2 установлено в какое-то очень большое значение, а Tau – в очень долгое. Мы постоянно сталкиваемся с режимом турбо, пока температура остаётся в установленных пределах.

Сегодняшняя ситуация, и что мы можем с ней сделать

Давно хотел написать подобную статью, по меньшей мере, с момента запуска Kaby Lake. Большая часть процессоров в потребительских материнских платах работает с неограниченным PL2, и это считалось нормальным годами. И только по результатам тестирования Core i9-9900K мы начали замечать нечто странное. В нашей статье на прошлой неделе по поводу нового Xeon E написано, что наша материнская плата Supermicro буквально следует рекомендациям от Intel. Может показаться очевидным, что более коммерческая/серверная плата будет следовать спецификациям от Intel, но вживую я лично видел такое впервые. Очевидно, что потребительские платы по таким спецификациям не работают, и не работали. Я бы сказал, что собственные результаты тестирования от Intel (и результаты тестирования процессоров Intel от AMD) на потребительских материнках тоже не соответствуют спецификациям от Intel.

Так что нам с этим делать? Я бы сказал, что Intel надо размещать на коробках два обозначения мощности:

  • TDP пиковое для PL2
  • TDP долговременное для PL1.

Таким образом Intel и другие смогут объяснить пиковое потребление и базовую частоту.

Если пользователи хотят, чтобы потребительские материнские платы изменились, то это будет сложнее сделать. Все производители хотят опередить друг друга, поэтому мы сталкиваемся с такими вещами, как опция Multi-Core Turbo, включённая по умолчанию. Производители предпочитают путь «неограниченного PL2», поскольку это позволяет им пролезать на вершины чартов быстродействия. А вот в ноутбуках с ограниченными возможностями по охлаждению часто заданы свои варианты PL1, PL2 и Tau, и часто они строго соответствуют этим параметрам.

Вопрос в том, насколько спецификации от Intel важны для настольных процессоров от Intel? Если нам надо следовать этим рекомендациям буквально, может, мы сделаем ещё один шаг, и будем использовать только стоковые кулеры?

Автор: SLY_G

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js