Исследуем подробно Intel Core i7

Технологии Turbo Boost и Hyper-Threading


Сегодняшняя статья будет посвящена тем аспектам, которые мы не осветили в основном материале, посвящённом новой архитектуре Intel Core i7 и её первому, попавшему к нам представителю — процессору Intel Core i7 920. Как, наверное, помнят наши постоянные читатели, в том тестировании мы оценили производительность Core i7 920, так сказать, в «полностью штатном» режиме — с включенными технологиями Turbo Boost и Hyper-Threading, как он и должен, по идее, работать в обычной пользовательской системе.

Однако исследовательский пыл трудно остудить, поэтому нас, конечно, заинтересовал вопрос: а какую долю новые технологии вносят в общую производительность процессоров данной архитектуры? Данный материал полностью посвящён этому вопросу: мы исследовали производительность Core i7 в «минималистичном» варианте (отключив как Turbo Boost, так и Hyper-Threading), а также в вариантах с включённой Hyper-Threading и включённым Turbo Boost. И, естественно, в качестве ориентира присутствует «нормальный» режим, где обе задействованы технологии.

Некоторые изменения коснулись и тестового стенда: в данном тестировании мы использовали уже 6 ГБ DDR3 SDRAM от компании Corsair, а также системную плату ECS X58B-A. Все остальные комплектующие остались неизменными с момента публикации предыдущей статьи по Core i7. К сожалению, использование 6 ГБ ОЗУ вместо 3 ГБ в прошлом тесте, судя по результатам, не позволяет их сравнивать напрямую, поэтому стандартная конфигурация с включенными технологиями Turbo Boost и Hyper-Threading была протестирована ещё раз с указанными здесь памятью и системной платой.

Тестирование

Обозначения в таблицах следует трактовать следующим образом: «All Disabled» — отключены и Turbo Boost, и Hyper-Threading. «TB Enabled» — включён только Turbo Boost. «HT Enabled» — включён только Hyper-Threading. «All Enabled» — включены Turbo Boost и Hyper-Threading.

Графа «Прирост, %» отражает прирост производительности того режима, который находится в предыдущем столбце (слева), относительно режима «All Disabled». NB: Именно относительно режима «All Disabled», то есть крайней левой колонки с данными, а не относительно предыдущего «Enabled»-режима.

Жирным красным шрифтом выделен отрицательный прирост (падение производительности).

Пакеты трёхмерного моделирования

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
3ds max
CPU Render 9,93 10,47 5% 11,11 12% 11,61 17%
Graphics 4,26 4,35 2% 3,88 -9% 4,41 4%
Hardware Shaders 10,38 10,82 4% 10,01 -4% 10,57 2%
Maya
GFX 2,83 2,89 2% 2,81 -1% 2,89 2%
CPU 7,70 7,90 3% 7,73 0% 8,18 6%
Render 0:04:58 0:04:41 6% 0:04:07 21% 0:03:55 27%
Lightwave 0:07:28 0:06:59 7% 0:07:41 -3% 0:07:43 -3%
Group Score 118 123 4% 120 2% 127 7%

Включение Turbo Boost даёт стабильный прирост везде, что достаточно логично: согласно общей концепции, данная функция, в принципе, не должна давать падение производительности. Ситуация с Hyper-Threading более сложная: на рендеринге (3ds max, Maya) она даёт достаточно существенный прирост, лишь в Lightwave наблюдается незначительное падение. Достаточно симптоматично, что включение Hyper-Threading приводит к падению производительности в графике (опять-таки 3ds max, Maya). Можно предположить, что мы имеем дело с недостаточно оптимизированными драйверами видеокарты, которые тоже задействуют функции процессора.

CAD/CAM пакеты

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
UGS NX
Total CPU 3,97 4,09 3% 3,90 -2% 4,11 4%
Total Graphics 1,95 1,97 1% 1,87 -4% 1,97 1%
Pro/ENGINEER
CPU Related tasks 569 529 8% 570 0% 535 6%
Graphics Relatsed tasks 769 743 3% 800 -4% 758 1%
SolidWorks
Graphics 80,33 71,78 12% 77,44 4% 69,13 16%
CPU 44,17 41,52 6% 43,68 1% 40,88 8%
Group Score 110 116 6% 109 -1% 116 6%

Данная группа тестов и к «традиционной» (физической, а не виртуальной) многоядерности относилась как минимум с прохладцей, поэтому совершенно неудивительно, что её отношение к многоядерности виртуальной (Hyper-Threading) оказалось не лучше, а по факту (Group Score) даже хуже. Turbo Boost демонстрирует достаточно высокий средний балл прироста — даже выше, чем в прошлой подгруппе. Что, впрочем, тоже закономерно: чем более слабо приложения могут задействовать многоядерность — тем больший потенциал повышения частоты они обеспечивают для одиночного работающего ядра.

Компиляция

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
VisualStudio 0:25:39 0:23:38 9% 0:24:15 6% 0:22:36 13%
Group Score 116 126 9% 123 6% 132 13%

Один из немногих тестов, в котором наблюдается прирост как от включения одной «турбирующей» функции, так и от другой. И даже в сумме они накладываются друг на друга с достаточно неплохим КПД.

Профессиональная работа с фотографиями

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
Photoshop
Blur 0:04:42 0:04:28 5% 0:04:04 16% 0:03:50 23%
Color 0:01:04 0:00:58 10% 0:01:20 -20% 0:01:16 -16%
Filters 0:04:26 0:04:04 9% 0:04:26 0% 0:04:04 9%
Light 0:01:42 0:01:34 9% 0:01:38 4% 0:01:30 13%
Rotate 0:01:52 0:01:48 4% 0:01:48 4% 0:01:42 10%
Sharp 0:01:52 0:01:46 6% 0:01:46 6% 0:01:40 12%
Size 0:00:42 0:00:40 5% 0:00:42 0% 0:00:40 5%
Transform 0:01:28 0:01:22 7% 0:01:26 2% 0:01:20 10%
Group Score 134 143 7% 135 1% 144 8%

Падение производительности на подтесте «Color» (преобразование цветового пространства RGB — CMYK — LAB и обратно), судя по всему, связано с особенностями реализации кода данной конкрентной процедуры, потому что все остальные подтесты Photoshop демонстрируют вполне высокую степень оптимизма как по поводу Turbo Boost, так и по поводу Hyper-Threading. Хотя, на самом деле, это неудивительно: Adobe Photoshop в нашем «табели о рангах SMP-оптимизированных приложений» занимает традиционно высокое место.

Научно-математические пакеты

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
Maple 0,0346 0,0380 10% 0,0346 0% 0,0376 9%
Mathematica
Internal 4,2240 4,6050 9% 3,8650 -8% 4,0950 -3%
MMA 1,4325 1,5519 8% 1,4233 -1% 1,5484 8%
MATLAB
LU 0,0395 0,0377 5% 0,0471 -16% 0,0439 -10%
FFT 0,0996 0,0961 4% 0,0998 0% 0,0946 5%
ODE 0,1655 0,1542 7% 0,1676 -1% 0,1546 7%
Sparse 0,2259 0,2175 4% 0,4514 -50% 0,4238 -47%
2D 0,2434 0,2349 4% 0,2469 -1% 0,2368 3%
3D 0,5615 0,5517 2% 0,5654 -1% 0,5650 -1%
Group Score 113 120 6% 101 -11% 108 -5%

Откровенный пессимизм по поводу Hyper-Threading в подавляющем большинстве подтестов научно-математических пакетов, судя по всему, свидетельствует о весьма высокой их зависимости от оптимизированных под конкретные процессорные архитектуры библиотек. По всей видимости, в данной области действительно не существует универсальных решений оптимизации, поэтому практически все новые архитектуры обречены на низкие результаты до тех пор, пока кто-то не удосужится оптимизировать сложную математику именно под них. Напомним, что подтест MATLAB «Sparse» демонстрирует свою непредсказуемую капризность на новых архитектурах уже не в первый раз — в предыдущий раз ему столь же категорически «не понравилась» новая архитектура от AMD.

Веб-сервер

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
PHP Calculator 211 222 5% 254 20% 267 27%
PHPSpeed
Synthetic PHP 3601 3790 5% 3498 -3% 3693 3%
Synthetic MySQL 3156 3336 6% 2984 -5% 3204 2%
Synthetic Read/Write 2339 2454 5% 2248 -4% 2413 3%
Real World PHP 6360 6681 5% 6176 -3% 6513 2%
Real World PHP & MySQL 3010 3151 5% 2908 -3% 3115 3%
Server 2477 2589 5% 2340 -6% 2536 2%
Group Score 126 132 5% 125 -1% 133 6%

Существенный прирост от включения Hyper-Threading демонстрирует единственный по-настоящему хорошо SMP-оптимизированный подтест PHP Calculator. «Однопроцессорный» PHPSpeed от Hyper-Threading только замедляется — видимо, сказываются те «родовые болячки», которые достались данной технологии от её первой инкарнации в архитектуре NetBurst: автоматическое «располовинивание» при её включении некоторых процессорных буферов.

Архиваторы

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
7-Zip
0:02:01 0:01:58 3% 0:02:01 0% 0:01:57 3%
WinRAR
0:01:01 0:00:58 5% 0:01:07 -9% 0:01:04 -5%
Ultimate ZIP
0:01:54 0:01:44 10% 0:01:54 0% 0:01:44 10%
Group Score
123 130 6% 119 -3% 126 3%

Достаточно высокая степень оптимизма по поводу Turbo Boost и, с другой стороны — полноё её отсутствие (с двумя «выражениями неодобрения») по поводу Hyper-Threading, доступно и понятно иллюстрируют одну особенность современных программ архивации: им и четыре ядра слишком много (о чём свидетельствует высокий прирост при включении Turbo Boost), а уж восемь (да ещё и с уменьшенными буферами) — совсем чересчур.

Кодирование медиаданных

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
FLAC 0:01:05 0:01:00 8% 0:01:05 0% 0:01:00 8%
LAME 0:01:33 0:01:29 4% 0:01:33 0% 0:01:29 4%
Musepack 0:01:50 0:01:41 9% 0:01:51 -1% 0:01:41 9%
Vorbis 0:03:14 0:03:05 5% 0:03:15 -1% 0:03:13 1%
Canopus ProCoder 0:04:04 0:03:51 6% 0:04:17 -5% 0:04:07 -1%
DivX 0:00:58 0:00:54 7% 0:00:57 2% 0:00:52 12%
x264 0:02:10 0:02:04 5% 0:01:47 21% 0:01:42 27%
XviD 0:06:04 0:05:31 10% 0:06:05 0% 0:05:32 10%
Group Score 124 133 7% 127 2% 135 8%

Недостаток оптимизма относительно «виртуализации» ядер при их удвоении сдержанно продемонстрировали два аудиокодека (из них, заметим, один имеет SMP-оптимизацию) и один видеокодек (Canopus). В то же время очень хорошо SMP-оптимизированный x264 повторил рекорд рендер-движка Maya с приростом от включения HT в 21%. Это внушает оптимизм: значит, можно получать существенный выигрыш от данной технологии, если постараться!

Игры

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
Call of Duty 4 105 105 0% 105 0% 105 0%
Company of Heroes 57 57 0% 57 0% 57 0%
Call of Juarez 47 50 6% 47 0% 47 0%
Crysis 24,63 24,77 1% 24,83 1% 24,83 1%
S.T.A.L.K.E.R. 122 122 0% 121 -1% 122 0%
Unreal Tournament 3 125 128 2% 114 -9% 119 -5%
World in Conflict 59 61 3% 59 0% 60 2%
Group Score 105 107 2% 103 -1% 104 0%

Ещё в первой статье, посвящённой тестированию Core i7 920, мы отмечали, что игры пока — совсем не «конёк» новой архитектуры Intel. В данной статье мы пока наблюдаем лишь ещё одно подтверждение данного тезиса. Это, кстати, достаточно странно: судя по некоторым тестам, игры могут достаточно позитивно реагировать на повышение ПСП.

Любительская работа с фотографиями

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
ACDSee 0:09:00 0:08:20 8% 0:08:50 2% 0:08:20 8%
IrfanView 0:15:13 0:13:54 9% 0:15:14 0% 0:13:55 9%
Paint.NET 20514 19430 6% 16317 26% 15626 31%
xat.com Image Optimizer 0:29:45 0:27:31 8% 0:29:46 0% 0:27:34 8%
XnView 0:15:23 0:14:02 10% 0:15:21 0% 0:14:06 9%
Group Score 122 132 8% 128 5% 138 13%

Пожалуй, основного внимания заслуживает подтест Paint.NET. Это приложение базируется на платформе Microsoft.NET, и оно наиболее «ярко» (причём позитивно) выступило в данном подтесте. Почему? Видимо, в силу специфики платформы: не секрет, что .NET-приложения, в некотором смысле, не являются «честными EXE-шниками», и сильно завязаны на операционную систему. С одной стороны, это их плюс: они по максимуму используют её возможности, что и видно по результатам. С другой стороны — сами по себе они достаточно медленные — именно поэтому на них так хорошо сказываются всевозможные технологии увеличения эффективности.

Заключение

  All Disabled TB Enabled Прирост, % HT Enabled Прирост, % All Enabled Прирост, %
PRO SCORE 120 127 6% 119 -1% 127 6%
HOME SCORE 119 125 6% 119 1% 126 6%
OVERALL SCORE 119 126 6% 119 0% 126 6%

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

Hyper-Threading, несмотря на вроде бы «новую реинкарнацию», по результатам тестов вызывает столь же противоречивые ощущения, как и во времена NetBurst. По нашему общему баллу, данная технология в целом даёт нулевое ускорение (напомним, что всё округляется до целых процентов), несмотря на то, что в отдельных тестах мы наблюдаем как существенное повышение быстродействия, так и существенное уменьшение. Причины тому лежат на поверхности: оптимизация программного обеспечения под «виртуальную многоядерность» является, судя по всему, достаточно нетривиальным занятием, а сама Intel с появлением в её ассортименте истинно многоядерных процессоров, тему виртуальной многоядерности забросила — на что мгновенно отреагировали охлаждением к ней и разработчики ПО. Сейчас Hyper-Threading, судя по всему, будут повторно пытаться возродить тему — однако у разработчиков уже есть негативный опыт, когда HT сначала рекламировали что есть силы, а потом задвинули в дальний угол в угоду более популярным тенденциям рынка. Поэтому вряд ли у тех, кто не освоил ориентированные на данную парадигму способы программирования ещё в предыдущий период её расцвета, реакция на «возрождение» HT будет позитивной.

Сегодняшнее исследование ещё раз подтвердило основной вывод, который мы сделали в теоретическом материале, посвящённом Intel Core i7: это очень «прагматичный» процессор. Откровенные просадки реанимированной Hyper-Threading у Core i7 в большинстве случаев плавно сглаживаются задействованием «волшебной палочки» Turbo Boost, в результате чего общее впечатление от его производительности в штатном режиме оказывается умеренно положительным (мелочными подробностями, вроде нынешнего исследования, мало кто интересуется). А со временем, глядишь, и к Hyper-Threading приспособятся, научатся программировать под неё как минимум не в минус, а то ещё и в плюс — тем более что позитивные примеры есть. Похоже, Intel достигла совершенства в формировании «установки на позитив» для потенциального потребителя: она уже не тащит его в свою концепцию светлого будущего за шиворот (прощай, Rambus...), а лишь мягко подталкивает: «иди же, иди… вот, смотри — всё же хорошо, правда?..»

Ясно одно: обобщив и проанализировав предыдущий (во многом негативный) опыт внедрения на рынок «прогрессивной» архитектуры NetBurst, Intel извлекла урок, и больше не рискует продвигать свои концептуально-архитектурные озарения способом «против лома нет приёма». Теперь она делает это более мягко и нежно, предоставляя пользователям новой архитектуры не только завтрашнего журавля в небе, но и сегодняшнюю синицу в руках. Синицу (Turbo Boost), мы оценили. Спасибо. Журавль (Hyper-Threading) — пока всё ещё в небе. Ждём-с…



Модули памяти предоставлены Corsair Memory



Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.