Процессоры и память

Обзор Core i7-12700K, в котором выясняется, что E-ядра вредят P-ядрам, но без них всё только хуже

⇣ Содержание

Процессоры серии Core i9 для массового сегмента появились не так давно. До 2018 года максимальные по производительности CPU, которые можно было установить в типовые ПК, относились к серии Core i7. Но с выходом Coffee Lake компания Intel решила добавить к модельному ряду более дорогие модификации с позиционированием на ступень выше. Правда, нельзя сказать, что представители серии Core i9 на тот момент получили какие-то понятные и продуманные отличия от более простых собратьев. В каждом новом поколении признаки, отличающие Core i9 от Core i7, менялись, а с выходом процессоров Rocket Lake ситуация, похоже, вообще зашла в тупик.

Посудите сами. Ключевым преимуществом восьмиядерного Core i9-9900K перед восьмиядерным же Core i7-9700K была поддержка технологии Hyper-Threading и более вместительный L3-кеш. Затем Core i9-10900K стал десятиядерником с увеличенным L3-кешем, в то время как Core i7-10700K остался процессором с восемью ядрами, но уже с поддержкой Hyper-Threading. Однако позднее, в 11-м поколении, любые явные отличия стёрлись: Core i9-11900K и Core i7-11700K – почти одинаковые CPU, различающиеся исключительно тактовой частотой. Судя по всему, в Intel решили, что один только заводской разгон на 200-300 МГц может оправдать наценку в $140 за представителя серии Core i9. И это, честно говоря, очень напоминало закат серии Core i9 как отдельной сущности внутри модельного ряда.

Но обошлось: с анонсом процессоров Alder Lake всё снова встало на свои места. Core i9-12900K и Core i7-12700K получили заметные отличия и в числе вычислительных ядер, и в размере L3-кеша. А значит, мы снова имеем дело с явно разными устройствами, как и в случае Comet Lake. Однако если углубиться в подробности, то выясняется, что Core i9-12900K и Core i7-12700K дифференцированы так, чтобы это минимально затрагивало игровую производительность, – оба процессора имеют по восемь производительных ядер с примерно одинаковой частотой. При этом разрыв в стоимости этих моделей стал ещё больше – он теперь достигает $180. И это делает Core i7-12700K очень интригующей новинкой: этот процессор явно претендует на то, чтобы стать наилучшим вариантом с точки зрения сочетания производительности и цены для широкой аудитории геймеров.

Как показал первоначальный обзор Alder Lake, в котором мы знакомились с Core i9-12900K, старший процессор в новом семействе Intel при стоимости лишь немного выше, чем у 12-ядерного Ryzen 9 5900X, как минимум не уступает флагманскому 16-ядернику конкурента. Ещё более впечатляющие результаты Core i9-12900K показывает в играх: в них он попросту недосягаем ни для каких других процессоров. Поэтому вполне можно ожидать, что гораздо более доступный Core i7-12700K, официальная цена которого даже ниже, чем у Ryzen 7 5800X, тоже окажется решением с передовой игровой производительностью.

И вот здесь кроется главная интрига. С помощью Core i9-12900K компания Intel смогла вырывать у AMD лидерство в производительности в верхнем ценовом сегменте, а теперь нам предстоит выяснить, какая диспозиция сложилась ярусом ниже. Ведь если ситуация с соперничеством более массовых Core i7 и Ryzen 7 будет выглядеть таким же образом, как и на уровне флагманов, Intel имеет хороший шанс вернуть себе часть позиций, утраченных в десктопном сегменте за последние несколько лет. А это означало бы явную рыночную эскалацию, способную стать отличной почвой для ценовых войн и нового витка развития процессорных архитектур.

#Core i7-12700K крупным планом

Core i7-12700K, как и его старший собрат, типичный представитель семейства Alder Lake. Он базируется на монолитном кристалле, произведённом по технологии Intel 7 (10 нм Enhanced SuperFin), и имеет гибридную архитектуру. Это значит, что в этом процессоре соседствуют вычислительные ядра двух типов: производительные Golden Cove (P-ядра) и энергоэффективные Gracemont (E-ядра), за взаимодействие которых отвечает технология Thread Director. Кроме того, Core i7-12700K, как и все остальные его Alder Lake-собратья, поддерживает (наряду с DDR4) память DDR5 и интерфейс PCIe 5.0 x16 для взаимодействия с графической картой.

Всё это уже было подробно рассмотрено в обзоре Core i9-12900K, здесь же мы сосредоточимся на отличиях и особенностях Core i7-12700K. И главное в характеристиках этого процессора то, что он 12-ядерный. По сравнению с Core i9-12900K у него на четыре E-ядра меньше, то есть с восемью производительными ядрами в нём соседствует лишь четыре энергоэффективных ядра. Поскольку E-ядра в первую очередь нацелены на работу с фоновыми задачами, такая потеря не кажется чем-то существенным. Однако есть и ещё одно отличие – в Core i7-12700K уменьшен кеш третьего уровня, его объём составляет не 30, а 25 Мбайт.

При этом полупроводниковый кристалл, на котором основан Core i7-12700K, – тот же самый, что и у старшего процессора в семействе. В нём лишь деактивирован один из двух четырёхъядерных кластеров из ядер Gracemont.

Естественно, между Core i7-12700K и Core i9-12900K есть небольшие различия и в тактовых частотах – более детальная информация приведена в таблице ниже.

Число ядерЧисло потоковЧастота P-ядер, ГГцЧастота E-ядер, ГГцL3-кеш, МбайтГрафикаБазовый TDP, ВтТурбоTDP, ВтЦена
i9-12900K 8P + 8E 24 3,2-5,2 2,4-3,9 30 UHD 770 125 241 $589
i7-12700K 8P + 4E 20 3,6-5,0 2,7-3,8 25 UHD 770 125 190 $409
i5-12600K 6P + 4E 16 3,7-4,9 2,8-3,6 20 UHD 770 125 150 $289

Приведённые спецификации обращают внимание ещё наодно важное отличие Core i7-12700K от флагманского CPU – более низкий (на внушительные 51 Вт) показатель максимального энергопотребления (MTP). То есть этот процессор должен быть существенно экономичнее Core i9-12900K, причём достигается это, очевидно, отнюдь не отключением экономичных E-ядер — основную роль играют более низкие тактовые частоты. Снижение предельной частоты P-ядер на 200 МГц позволяет выставить более низкое напряжение питания, а это в свою очередь положительно сказывается на тепловых и энергетических характеристиках. В результате Core i7-12700K уже не выглядит таким прожорливым и горячим чипом, как флагманский Alder Lake.

Это прослеживается не только в паспортных характеристиках, но и на практике. На графике ниже показано потребление Core i7-12700K при рендеринге в Cinebench R23, а для сравнения приведены значения, показанные в аналогичных условиях старшей моделью Alder Lake, Core i9-12900K, и 12-ядерным AMD Ryzen 9 5900X.

Разница в энергопотреблении Core i7-12700K и Core i9-12900K в ресурсоёмкой задаче составила 36 Вт. Это несколько меньше, чем обещают спецификации, но всё равно довольно заметно. По крайней мере, по сравнению с Ryzen 9 5900X 12-ядерный процессор семейства Alder Lake потребляет лишь на четверть больше. Иными словами, упрекнуть Core i7-12700K в кошмарных энергетических аппетитах уже не получится.

Правда, справедливости ради нужно отметить, что в некоторых сценариях Core i7-12700K может потреблять существенно больше. При интенсивной AVX2-нагрузке, создаваемой стресс-тестом Prime95, его энергопотребление возрастает до 210-215 Вт. Однако такие значения можно наблюдать лишь в специальных утилитах, а не в распространённых приложениях.

Более того, в играх Core i7-12700K показывает себя очень экономичным CPU. Мы проверили потребление на примере Horizon Zero Dawn – игры, которая использует все процессорные ядра, — и в ней 12-ядерный Alder Lake потреблял лишь около 88 Вт, что примерно на 15 Вт ниже потребления Core i9-12900K. При этом Ryzen 9 5900X в этой же игре требует уже около 130 Вт. И это означает, что во многих практических сценариях Alder Lake окажется экономичнее и холоднее существующих процессоров AMD. Подробности можно увидеть на графике, где потребление процессоров в Horizon Zero Dawn отображено как функция времени.

В целом неплохо выглядит ситуация и с температурным режимом Core i7-12700K. Теплораспределительная крышка процессоров Alder Lake припаивается к полупроводниковому кристаллу, плюс сам кристалл стал тоньше, что упростило снятие с него тепла. В результате температура Core i7-12700K при работе в Cinebench R23 не превышала 78 градусов, а при игровой нагрузке колебалась у значения 55 градусов.

По приведённым графикам можно увидеть, что температуры Core i7-12700K на несколько градусов ниже, чем у Core i9-12900K, и принципиально отличаются от температур Ryzen 9 5900X. Процессор AMD нагревается до 75-80 градусов при нагрузке любого характера, в то время как у Alder Lake температура сильно зависит от того, чем конкретно он занят. Однако заметим, что температурные измерения были сделаны при использовании системы жидкостного охлаждения, которая может отводить от процессора довольно большое количество тепла. К сожалению, сделать аналогичное сравнение с воздушным кулером пока не представляется возможным ввиду отсутствия универсальных решений, совместимых с LGA1700-материнскими платами.

Все выпущенные на данный момент модели Alder Lake относятся к числу оверклокерских. Они имеют литеру «К» в названии, что означает разблокированные множители. Впрочем, разгонный потенциал у Alder Lake минимален: всё, что было можно, из этих процессоров уже выжал производитель.

При сопоставлении Core i7-12700K с аналогами его преимущество в характеристиках очевидно. Это – единственный 12-ядерник c рекомендованной ценой около $400 долларов и единственный 400-долларовый CPU с числом ядер более 8.

Ryzen 9 5900XRyzen 7 5800XCore i7-12700KCore i7-11700K
Ядра 12 8 12 (8P+4E) 8
Потоки 24 16 20 16
Частоты P-ядер, ГГц 3,7-4,8 3,8-4,7 3,6-5,0 3,6-5,0
Частоты E-ядер, ГГц - - 2,7-3,8 -
TDP/PBP, Вт 105 105 125 125
MTP, Вт 142 142 190 251
L3-кеш, Мбайт 2x32 32 25 16
Память DDR4-3200 DDR4-3200 DDR4-3200
DDR5-4800
DDR4-3200
Встроенная графика Нет Нет UHD 770 UHD 760
PCIe 24 линии 4.0 24 линии 4.0 16 линий 5.0
4 линии 4.0
20 линий 4.0
Цена $549 $449 $409 $399

Но больше всего в приведённой таблице поражает прогресс характеристик Core i7-12700K в сравнении с Core i7-11700K. За дополнительные четыре E-ядра, полуторакратное увеличение L3-кеша, новую микроархитектуру с 19-процентным ростом IPC и прочие улучшения вроде поддержки DDR5 и PCIe 5.0 компания Intel добавила к цене... всего лишь $10! Здесь, пожалуй, уместно смотрелось бы замечание о «животворящей конкуренции», но Intel при выборе цен на Alder Lake, похоже, вообще не оглядывалась на предложения конкурента. Ryzen 7 5800X, который формально даже немного дороже Core i7-12700K, на его фоне выглядит блекло, а более близкий по характеристикам Ryzen 9 5900X дороже 12-ядерного процессора Intel более чем на треть.

Также нужно добавить, что помимо Core i7-12700K компания Intel предлагает и аналогичную модель с отключённой интегрированной графикой. Она продаётся под названием Core i7-12700KF и стоит ещё на $25 дешевле.

#E-ядра в Core i7-12700K – нужны ли они вообще?

Процессоры Alder Lake базируются на ядрах двух разных типов — они не равноправны ни по производительности, ни по той роли, которую они играют. Как мы уже выяснили ранее, быстродействие одиночного E-ядра оценивается в половину однопоточной производительности P-ядра. То есть наличие четырёх E-ядер добавляет с точки зрения производительности Core i7-12700K не так много, они полезны скорее для улучшения энергоэффективности, поскольку способны выполнять фоновые задачи с минимальными затратами энергии. По всей видимости, именно из этих соображений E-ядра и присутствуют в процессорах Core i7, хотя, например, среди Core i5 поколения Alder Lake компания Intel предлагает в том числе и модели, полностью лишённые E-ядер.

До тестирования лишённых гибридности Core i5 мы пока не дошли (они появятся только в январе), тем не менее понять, насколько E-ядра нужны в Alder Lake, всё равно интересно. И Core i7-12700K представляется хорошим кандидатом на их отключение. Во-первых, E-ядер у него мало. А во-вторых, они несут с собой не только пользу, но и определённый вред. Из-за них процессоры Alder Lake теряют поддержку набора инструкций AVX-512, а ещё они заметно портят производительность кеш-памяти третьего уровня. Далее мы разберёмся с этими явлениями подробнее.

Но для начала на примере Cinebench R23 посмотрим, как меняется производительность Core i7-12700K с активированными и отключёнными E-ядрами при задействовании различного числа потоков.

По результатам Cinebench R23 кажется, что, несмотря на свою простоту, E-ядра вносят довольно ощутимый вклад в производительность. Без них производительность по результатам теста падает на 15 %, и на первый взгляд отключать их в Core i7-12700K смысла нет. Но в действительности это не совсем так и всё зависит от тех задач, которые будут возложены на процессор. Дело в том, что при отключении энергоэффективных ядер Core i7-12700K обретает поддержку набора векторных инструкций AVX-512, которой по официальным данным в этом процессоре нет.

 E-ядра отключены

E-ядра отключены

Так происходит потому, что необходимые для работы AVX-512 регистры и механизмы заложены в микроархитектуре Golden Cove, на которой основаны P-ядра. И это закономерно – аналогичные ядра вскоре пойдут в серверные процессоры Sapphire Rapids, где без поддержки AVX-512 не обойтись. Но в малых ядрах с микроархитектурой Gracemont поддержка 512-битных операций не закладывалась изначально из соображений повышения энергоэффективности и экономии транзисторного бюджета. В результате вышло так, что AVX-512-код потенциально можно исполнять лишь на части ядер Alder Lake. К сожалению, реализовать учитывающую эту особенность процессоров диспетчеризацию потоков на практике довольно проблематично. Поэтому Intel приняла решение отключить AVX-512 в Alder Lake полностью, чтобы все ядра в десктопных процессорах работали с одинаковым набором команд.

И на данном этапе такой выбор кажется вполне оправданным решением. Хотя в процессорах Rocket Lake, как и в мобильных Ice Lake и Tiger Lake, поддержка AVX-512 имеется, привычное большинству пользователей программное обеспечение этими инструкциями (пока) не пользуется. К тому же, как оказалось, вернуть P-ядрам в Alder Lake поддержку AVX-512 совсем несложно. Для этого достаточно выключить E-ядра и проследить, чтобы AVX-512-инструкции не были явно заблокированы через BIOS.

Что интересно, в некоторых случаях такой манёвр позволяет получить прирост производительности, поскольку приложения, знакомые с AVX-512, получают от использования этих векторных инструкций значительно большую выгоду, чем от четырёх дополнительных E-ядер. Эта закономерность хорошо прослеживается в счётном тесте y-cruncher, вычисляющем число пи с высокой точностью по алгоритму Чудновского. Данный бенчмарк может задействовать 512-битные векторные инструкции, и в нём Core i7-12700K с отключёнными E-ядрами оказывается на 7 % быстрее полноценной 12-ядерной версии самого себя.

Поддержка AVX-512 – не единственная причина, по которой выключение E-ядер может иметь смысл. Есть и второй важный фактор – частота кольцевой шины, объединяющей ядра в процессорах Alder Lake. Схема функционирования этой шины такова, что в номинальном режиме она должна работать на частоте, не превышающей частоту подключённых к ней ядер. А поскольку E-ядра в Alder Lake работают на более низкой частоте, то получается, что они тормозят всю кольцевую шину.

Именно поэтому в штатном состоянии у Core i7-12700K кольцевая шина работает на частоте 3,6 ГГц – такова частота E-ядер под полной нагрузкой. Но если отключить низкочастотные E-ядра, то скорость работы кольцевой шины поднимется до 4,5 ГГц – куда более привычной величины, которая характерна для процессоров Intel всех последних поколений.

 Core i7-12700K, E-ядра включены

Core i7-12700K, E-ядра включены

 Core i7-12700K, E-ядра отключены

Core i7-12700K, E-ядра отключены

И это – довольно существенное изменение. Дело в том, что с частотой кольцевой шины связана частота работы L3-кеша, то есть отключение E-ядер в итоге ускоряет L3-кеш и, соответственно, всю подсистему памяти. Проиллюстрировать это можно результатами теста AIDA64 Cache&Memory Benchmark, снятыми на рассматриваемом процессоре Core i7-12700K с включёнными и выключенными энергоэффективными ядрами.

 Core i7-12700K, E-ядра включены

Core i7-12700K, E-ядра включены

 Core i7-12700K, E-ядра отключены

Core i7-12700K, E-ядра отключены

Как видно по представленным скриншотам, в варианте конфигурации с выключенными E-ядрами рассматриваемый Core i7-12700K предлагает на 18 % более низкую латентность L3-кеша по сравнению с полноценной конфигурацией «8P + 4E». Заодно на 4 % снижается латентность памяти, что тоже связано с ускорением кольцевой шины.

Вывод получается довольно неожиданным: существуют объективные причины, по которым выключение E-ядер может оказаться полезным для повышения производительности. Поэтому при исследовании быстродействия Core i7-12700K нам пришлось протестировать его сразу в двух вариантах – как в полноценном 12-ядерном, так и в урезанном 8-ядерном с отключёнными E-ядрами.

Однако существует очень важный и одновременно странный нюанс. Технология Intel Thread Director, которая должна помогать планировщику ОС распределять потоки по разнородным ядрам, при отключении E-ядер начинает делать всё неправильно. Когда типов логических ядер в Alder Lake оказывается не три (производительные, экономичные и виртуальные), а два, она вообще перестаёт отличать логические ядра, образованные посредством Hyper-Threading, от полноценных физических ядер. В результате после отключения энергоэффективных ядер малопоточные нагрузки могут быть распределены таким образом, что какие-то пары потоков отправятся на одно и то же ядро, а какие-то физические ядра при этом останутся свободными.

В качестве примера приведём скриншот диспетчера задач, показывающий, как на Core i7-12700K с отключёнными E-ядрами распределяется восьмипоточная задача. Видно, что планировщик Windows 11 без зазрения совести отправляет вычислительные потоки на ближайшие друг к другу логические ядра, которые на самом деле являются одним физическим ядром с поддержкой Hyper-Threading, да ещё и постоянно перетасовывает их.

 Core i7-12700K, E-ядра отключены

Core i7-12700K, E-ядра отключены

 Core i7-12700K, E-ядра включены

Core i7-12700K, E-ядра включены

Для наглядности рядом приведён второй скриншот, который показывает, как ложится на логические ядра та же восьмипоточная нагрузка, если у Core i7-12700K E-ядра не выключать. В этом случае каждая последовательная пара логических ядер, представляющая собой одно физическое ядро с Hyper-Threading, нагружается не более чем наполовину для достижения максимальной производительности. Последние четыре ядра на втором скриншоте – E-ядра, они к решению восьмипоточной задачи переднего плана не подключаются.

Бороться с неправильным распределением потоков по P-ядрам можно лишь одним способом – лишить технологию Intel Thread Director какого-либо влияния на этот процесс. К сожалению, просто так отключить Thread Director каким-либо переключателем невозможно, но есть другой вариант – воспользоваться старой версией ОС, где эта технология планировщиком не задействуется. И это действительно помогает.

Иными словами, в случае отключения E-ядер в процессорах Alder Lake операционная система Windows 11 только вредит делу и портит производительность. А вот Windows 10 ведёт себя вполне адекватно. Не поддерживая Thread Director, она корректно различает настоящие и виртуальные ядра и распределяет потоки по ним так, чтобы в конечном итоге достигался максимальный уровень производительности.

Различия в производительности Core i7-12700K с отключёнными E-ядрами в Windows 10 и Windows 11 наглядно показаны на следующем графике. Измерения проводились в Cinebench R23 при различных ограничениях на число активных потоков.

Хорошо заметно, что наиболее критичной является нагрузка, сформированная числом потоков от 2 до 7. Неправильная работа Thread Director в Windows 11 в этих ситуациях может привести к снижению производительности на двузначное число процентов. А в худшем, трёхпоточном случае Windows 11 способна затормозить быстродействие процессора на внушительные 23 %. Остаётся только надеяться, что проблема с неправильным распределением потоков в Alder Lake будет исправлена с будущими обновлениями Windows 11, а пока нужно иметь в виду, что при отключении энергоэффективных ядер новой версией ОС лучше не пользоваться.

Следующая страница →
 
⇣ Содержание
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
⇣ Комментарии
Прежде чем оставить комментарий, пожалуйста, ознакомьтесь с правилами комментирования. Оставляя комментарий, вы подтверждаете ваше согласие с данными правилами и осознаете возможную ответственность за их нарушение.
Все комментарии премодерируются.
Комментарии загружаются...
window-new
Soft
Hard
Тренды 🔥
Microsoft подтвердила повышение цен на эксклюзивы Xbox с 2023 года — Forza Motorsport, Redfall и Starfield будут стоить по $70 8 ч.
Не все супергерои носят плащи: разработчики Marvel's Midnight Suns помогли смертельно больному фанату сыграть в игру за год до релиза 13 ч.
Google закроет интернет-помощника Duplex on the Web и сосредоточится на голосовых технологиях 14 ч.
CD Projekt RED полностью свернёт поддержку «Гвинта» к началу 2024 года 15 ч.
IBS в третий раз перенесла IPO и уволила «невозвращенцев» 16 ч.
«Это будет или великолепно, или ужасно»: новый трейлер сериала The Last of Us воодушевил игроков перед скорой премьерой 17 ч.
Еженедельный чарт Steam: The Callisto Protocol и Need for Speed Unbound не попали в тройку лидеров, но это удалось другой проблемной новинке 17 ч.
Геральт из Ривии добрался до Fortnite благодаря боевому пропуску четвёртой главы 18 ч.
Для Skyrim вышел масштабный мод Warden of the Coast с нелинейным сюжетом, озвучкой и компаньонами в стиле Mass Effect и Dragon Age 20 ч.
Алексей Кудрин станет советником по корпоративному развитию в «Яндексе» 20 ч.