Вслед за первым и вторым поколением архитектуры Core на рынке в этом году появилось и третье. Точнее, почти появилось — на настольном рынке пока дебютировали только старшие четырехъядерные модификции процессоров. Но сделано это было уже несколько месяцев назад, так что их производительность с потребительской точки зрения нами уже исследована. И настало время копнуть чуть глубже — посмотреть, как третье поколение соотносится с первыми двумя в равных условиях. Иными словами, сегодняшний материал будет не самостоятельной статье, а продолжением уже начатого исследования, с которым мы всем рекомендуем ознакомиться для начала, поскольку теоретическая составляющая обеих статей одинакова.
Конфигурация тестовых стендов
В прошлый раз мы уже затронули все сложности «уравнивания» характеристик процессоров разных поколений, так что еще раз возвращаться к этому вопросу не будем. Лишь вкратце: нам подходят только Core i7, поскольку в первом поколении Core i5 емкость кэш-памяти третьего уровня была большей, чем во втором и третьем. А тактовая частота не может превышать 2,4 ГГц — это как раз максимум для UnCore первого поколения четырехъядерных Core для платформы LGA1156. Почему нам нужна именно она? Потому что с новой LGA1155 совпадает конфигурация памяти — обе платформы рассчитаны на применение двухканальных контроллеров. На второй итерации LGA1155 появилась еще и поддержка памяти DDR3-1600, чем мы, очевидно, в этом тестировании пользоваться не будем.
Процессор | Nehalem | Nehalem HT | Sandy Bridge | Sandy Bridge HT | Ivy Bridge | Ivy Bridge HT |
«Базовая» модель | Core i7-875K | Core i7-875K | Core i7-2600K | Core i7-2600K | Core i7-3770K | Core i7-3770K |
Технология пр-ва | 45 нм | 45 нм | 32 нм | 32 нм | 22 нм | 22 нм |
Частота ядра, ГГц | 2,4 | 2,4 | 2,4 | 2,4 | 2,4 | 2,4 |
Кол-во ядер/потоков вычисления | 4/4 | 4/8 | 4/4 | 4/8 | 4/4 | 4/8 |
Кэш L1, I/D, КБ | 32/32 | 32/32 | 32/32 | 32/32 | 32/32 | 32/32 |
Кэш L2, КБ | 4×256 | 4×256 | 4×256 | 4×256 | 4×256 | 4×256 |
Кэш L3, МиБ | 8 | 8 | 8 | 8 | 8 | 8 |
Частота UnCore, ГГц | 2,4 | 2,4 | 2,4 | 2,4 | 2,4 | 2,4 |
Таким образом, у нас получилось шесть «процессоров»: четыре уже знакомы по предыдущему тестированию, а еще два сделаны на базе новенького Core i7-3770K. Все технологии управления энергопотреблением отключены, множители жестко зафиксированы на значении 24 — словом, как видим, вся разница именно в архитектуре. По сути, мы имеем три Core i7 всех трех поколений и еще три процессора, которые можно отнести к классу Core i5. Естественно, ни один из шести не имеет ничего общего с «потребительскими» моделями — полностью отключен Turbo Boost, сильно снижены частоты, зато емкость L3 увеличена сравнительно с настоящими Core i5 линеек 2000 и 3000. В общем, чисто сферическое исследование в вакууме, призванное поискать ответы на теоретические (но, тем не менее, интересные) вопросы. Первым из которых являются внутренние улучшения Ivy Bridge с точки зрения производительности. А вторым — продолжение исследования эффективности технологии Hyper-Threading.
Системная плата | Оперативная память | |
LGA1155 | Biostar TH67XE (H67) | Corsair Vengeance CMZ8GX3M2A1600C9B (2×1333; 9-9-9-24) |
LGA1156 | ASUS P7H55-M Pro (H55) | Corsair Vengeance CMZ8GX3M2A1600C9B (2×1333; 9-9-9-24) |
Тестирование
Традиционно, мы разбиваем все тесты на некоторое количество групп и приводим на диаграммах средний результат по группе тестов/приложений (детально с методикой тестирования вы можете ознакомиться в отдельной статье). Результаты на диаграммах приведены в баллах, за 100 баллов принята производительность референсной тестовой системы iXBT.com образца 2011 года. Основывается она на процессоре AMD Athlon II X4 620, ну а объем памяти (8 ГБ) и видеокарта (NVIDIA GeForce GTX 570 1280 МБ в исполнении Palit) являются стандартными для всех тестирований «основной линейки» и могут меняться только в рамках специальных исследований. Тем, кто интересуется более подробной информацией, опять-таки традиционно предлагается скачать таблицу в формате Microsoft Excel, в которой все результаты приведены как в преобразованном в баллы, так и в «натуральном» виде.
Интерактивная работа в трёхмерных пакетах
Технология Hyper-Threading по-прежнему не является «бесплатной» для приложений, неспособных использовать ее преимущества, однако вот в этом классе задач ее вредным влиянием давно уже можно пренебречь — с точностью до последнего значащего знака, т. е. на уровне ошибок округления. Ну а разница между первым и вторым шагом в усовершенствовании архитектуры Core видна невооруженным глазом: один обеспечил примерно 8% прироста в равных условиях, а второй — всего пару процентов. Забегая вперед, скажем, что это чуть ли не худший (но и не неожиданный) результат в сегодняшнем тестировании.
Финальный рендеринг трёхмерных сцен
При включенной и отключенной технологии Hyper-Threading (которая, что естественно, в этих тестах очень эффективна) процессоры ведут себя по-разному. В первом случае абсолютный прирост от поколения к поколению одинаковый, во втором — первый шаг весомей второго. В относительном исчислении, впрочем, за счет роста базы прирост от 2G к 3G всегда ниже, чем от 1G к 2G, однако это никак не отменяет (а даже усугубляет) тот факт, что чем дальше, тем менее эффективной становится НТ.
Упаковка и распаковка
Переход от LGA1156 к первой версии LGA1155 обеспечил и прирост производительности даже при равных условиях, вторая итерация данной платформы его усилила и углубила. Естественно, в куда более скромных размерах, но ничего иного и не ожидалось. Вернее, не было обещано. Дополнительные 3% — немного. Но 3% на пустом месте — не так уж и плохо: на первой диаграмме и того не было ;)
Кодирование аудио
В аудиокодировании прирост оказался еще большим. Почему это интересно? Потому, что аудиокодеки — пример очень консервативного программного обеспечения: как только производительность в этих задачах даже при использовании бюджетных процессоров стала достаточной для практического применения, так сразу на дальнейшие оптимизации программисты и «забили». Даже многопоточный режим работы реализуется внешними средствами «в лоб» (путем параллельного запуска кодирования нескольких файлов), поскольку максимум, на который в свое время замахивались создатели кодеков — поддержка пары потоков вычисления. Не больше. Однако при таком вот отсутствии прогресса в оптимизации, производительность продолжает расти от поколения к поколению. В том числе, и в совершенно равных условиях, не говоря уже об экстенсивных способах ее повышения, типа увеличения тактовых частот.
Компиляция
Пожалуй, наиболее интересный случай — когда прирост при переходе к третьему поколению больше, чем от первого ко второму. Да — и такое бывает. Уж не знаем в точности, что именно помогло компиляторам, но… Мы не раз отмечали относительную слабость Sandy Bridge в этих задачах, заключающуюся в крайне незначительном преимуществе перед соперниками, а вот в Ivy Bridge явно что-то «докрутили» из отложенного в предыдущий раз «на будущее».
Математические и инженерные расчёты
Прирост на обоих шагах сравним. На втором, конечно, чуть меньше, чем на первом, но есть. Забавно, что «графический» балл в трех программах из пяти (который можно увидеть на самой первой диаграмме) изменился существенно меньшим образом. А, может быть, и не забавно — на то он и графический, чтоб зависеть не только и не столько от процессора. Вот когда тестируется второй — тут уже все чуть более убедительно.
На что еще стоит обратить внимание? В первом поколении Core технология Hyper-Threading и здесь обеспечивала небольшой, но стабильный прирост производительности. А вот во втором и третьем она уже никак не влияет на быстродействие. Точнее, если обратить внимание на подробные результаты, то видно, что кое-где она обеспечивает прирост, а в некоторых приложениях — лишь падение, но в сумме одно другое уравновешивает. А вот в первом поколении — не уравновешивало.
Растровая графика
Программы растровой графики продолжают ускоряться неплохими темпами. Впрочем, в отличие от, например, компиляторов прорыва на этом этапе нет — он был на предыдущем. Но в абсолютном исчислении прирост неплох.
Векторная графика
А вот и еще что-то похожее на прорыв :) Подобно Sandy Bridge, но в отличие от Nehalem, Ivy Bridge в этих малопоточных программах не теряет в производительности при включении Hyper-Threading, да еще и прирост быстродействия на втором шаге развития Core вполне сравним с тем, что был на первом. В относительном исчислении, впрочем, он чуть уменьшился (поскольку «база» подросла), но сравним. Таким образом, и при ограниченном количестве потоков вычисления прогресс временами наблюдается.
Кодирование видео
В области видеокодирования от него тоже никуда не деться, но более показательна она для другой тенденции — все меньше и меньше прирост от Hyper-Threading. В общем, все более и более понятным становится стремление Intel, во-первых, разнести Core i5 и Core i7 и по другим параметрам (в частности, уже во втором поколении эти процессоры начали различаться емкостью кэш-памяти, а в третьем очень показателен подход к видеочасти — теперь все i7 снабжаются исключительно старшим GPU, в то время как в i5 он остается исключением, а не правилом), поскольку одной лишь виртуальной многопоточности слишком мало, чтобы оправдать разницу в позиционировании и цене. В результате, мы не удивимся, если относительная доля Core i7 в ассортименте массовых платформ будет сокращаться и в дальнейшем. Но и поводов для расстройства, впрочем, тоже никаких.
Офисное ПО
Казалось бы, зачем ускорять программы офисного назначения, если они и без того выполняются быстро? Однако «быстро» — не значит «мгновенно». Да и кроме топовых процессоров, есть еще и масса недорогой продукции, в том числе — и мобильного назначения, для которой и выбранные нами 2,4 ГГц иногда недостижимая мечта (процессоры в старших нетбуках — те же самые Core, но обычно с частотами 1-1,5 ГГц). Тем более, что экстенсивные способы повышения быстродействия здесь чаще всего неприменимы — во всей группе использовать многопоточность умеет только FineReader. Делает он это хорошо, так что и вклад его весом, но он один такой. А вот в остальных приложениях важна «однопоточная производительность», которая, как видим, в процессорах Intel продолжает расти от поколения к поколению. Однако вторая итерация принесла примерно вдвое меньше, чем первая.
Java
Даже беглого взгляда на диаграмму достаточно, чтобы прийти к выводу, что в одинаковых условиях выигрыш третьего поколения у второго где-то вдвое меньше, чем у второго сравнительно с первым. Что, впрочем, тоже неплохо и укладывается в общую картину, складывающуюся по результатам других тестов — аналогичный пример был на предыдущей диаграмме.
Игры
Тот самый случай, когда Hyper-Threading продолжает мешать — четыре потока нужно уже многим играм, а вот больше они утилизировать пока не умеют. Во всяком случае, не умеют это делать эффективно. Для Nehalem, впрочем, НТ была полезна в «тяжелых» режимах («легкий» является опциональным, а то бы и в рамках первого поколения снижение производительности тоже б проявлялось), а вот небольшое увеличение однопоточной производительности во втором и третьем поколениях Core сделало эту технологию бесполезной для игрового компьютера. Впрочем, и не сильно мешающей. Но, в основном, благодаря тому, что даже замедленный четырехъядерный Core уже не является узким местом в этом классе ПО. Правда и о каком-то «прогрессе» в нем, естественно, нет смысла рассуждать. Практически разница в пределах погрешности измерения, тем не менее, всегда в одну сторону — в пользу более новых процессоров сравнительно с более старыми.
Многозадачное окружение
И вновь мы обращаемся к одному из «экспериментальных» тестов методики, поскольку в данном сравнении его результаты крайне интересны. Суть теста проста: пять бенчмарков запускаются практически одновременно (с паузой в 15 секунд), при этом всем задачам присваивается «фоновый» статус (ни одно окно не является активным). Результатом считается среднее геометрическое времён выполнения всех тестов. Более подробную информацию можно получить из описания методики тестирования, ну а сейчас просто посмотрим на результаты…
Которые оказались достаточно неожиданными. Хотя к чему-то подобному мы и были готовы после тестирования в «штатном режиме», где для Core i5 прирост сравнительно с предыдущим поколением был более скромным, чем для Core i7, но не до такой степени. Фактически, как видим, при выполнении большого количества разнородных вычислительных потоков, четыре ядра — это все те же четыре ядра, что и в первых двух поколениях Core, а вот эффективность технологии Hyper-Threading при таком сценарии использования (в отличие от увеличения параллелизма силами одной программы) выросла резко. Для «домашнего пользователя» это не слишком актуально (несмотря на то, что на современном компьютере одновременно выполняется много процессов, большая их часть находится в неактивном режиме), но таковые и ранее предпочитали Core i5, с трудом, но вписывающийся в мейнтрим по цене. А вот сфера применения Core i7 более тяготеет к профессиональному использованию. Что, кстати, возможно, будет полезной информацией для покупателей серверных Xeon E3 на Ivy Bridge, две младших модели которых (1220V2 и 1225V2) поддержки Hyper-Threading лишены, так что являются, скорее, процессорами для рабочих станций начального уровня. А для сервера имеет смысл покупать хотя бы 1230V2, тем более, что наценка за восемь потоков вычислений в этом сегменте рынка куда меньше, чем среди процессоров для десктопов.
Итого
Первое, что стоит помнить, изучая результаты — пока речь ни о какой оптимизации конкретно под Ivy Bridge не идет. Не в глобальном смысле, а в рамках наших тестирований: данная методика введена в оборот уже более года назад. С тех пор успели обновиться многие приложения, так что после обновления методики (что запланировано на ближайшее время, т. е. работы уже давно ведутся) мы вполне можем увидеть определенные изменения в относительном положении разных процессоров. Пока же этого не произошло, можно говорить лишь (да и то — с осторожностью: программисты учат софт новым фокусам далеко не мгновенно) об оптимизации под второе поколение Core.
Однако даже в таких неудобных условиях определенный смысл в Ivy Bridge есть. Всегда. По крайней мере, новые процессоры нигде не хуже старых (что особенно отрадно, если вспомнить, что переход от Nehalem к Westmere в близких к равным условиях иногда приводил и к снижению производительности), а иногда — существенно лучше их. Т. е. расхожее мнение о том, что все успехи Ivy Bridge связаны с улучшением работы Turbo Boost, на поверку оказалось не совсем соответствующим действительности. Не противоречащим ей, но и не соответствующим — некоторые преимущества у третьего поколения есть именно за счет архитектуры. Преимущества эти не слишком большие, однако ничего другого и не ожидалось — особенно в равных условиях, в которых и Sandy Bridge не слишком-то превосходит старый Nehalem (просто потому, как мы уже отмечали, что основные силы на том шаге были направлены на улучшение работы UnCore). Наиболее заметные изменения второго поколения были связаны с появлением кольцевой шины (более точно — с приходом кольцевой шины в процессоры массового сегмента) и увеличением частоты работы кэш-памяти третьего уровня. Явления это взаимосвязанные: без способа «быстрой доставки» данных из кэша L3 в сами ядра нет смысла и ускорять L3, а если последний делать более быстрым, то надо увеличивать и пропускную способность «магистрали» из UnCore в Core. Именно это в Sandy Bridge и сделано, что позволило перейти от асинхронной работы кэша с ядрами — к синхронной на частотах, превышающих 3 ГГц. Мы же для обеспечения равных условий проводили тестирование на 2,4 ГГц со всеми вытекающими отсюда последствиями. А в Ivy Bridge и таких улучшений особо не наблюдалось: главное, на что были брошены силы инженеров (если отвлечься от самого освоения техпроцесса 22 нм) — это графика и снижение энергопотребления. И то, и другое есть. Но есть и небольшой прирост в производительности за счет внутренних оптимизаций, который разумно считать мелким бонусом, доставшимся пользователям бесплатно :) Во всяком случае, несмотря на наличие в методике программ, сильно ускоряющихся от включения Hyper-Threading (радикально многопоточных), Ivy Bridge с выключенной НТ по итоговому баллу догоняет Nehalem с включенной при равных частотах и количествах ядер и кэш-памяти.
Кстати, о Hyper-Threading… Давайте посчитаем относительный прирост от данной технологии в приложении к программному обеспечению в целом (поскольку в нашу тестовую методику входит достаточно много разноплановых приложений, итоговый балл весьма репрезентативен в таком качестве). Первому поколению четырехъядерных Core технология HT обеспечивала порядка 11% прироста в среднем. Для второго поколения эта цифра сократилась до 10,5%. Более точно соотношения равны 1,113 и 1,105, т. е. разница на деле близка к 1%. Что имеем в последнем поколении? 1,093 — еще минус 1%. Причем программы одни и те же, прочие условия абсолютно равные, сама по себе технология хуже не стала — но пользы от нее все меньше и меньше. Во всяком случае, пользы меньше с точки зрения отдельно взятого приложения: само по себе физическое ядро утилизируется одним потоком вычислений настолько хорошо, что для дополнительных уже не остается ресурсов. Однако судя по результатам нашего экспериментального теста, где одновременно выполняются уже пять разнородных приложений, кое-что в последнем поколении Core «подкрутили» и здесь. Можно, конечно, побрюзжать на то, что подобные оптимизации компания наверняка могла внести и во второе поколение, но… Смысла в том нет :) Sandy Bridge и без того оказался большим шагом вперед в плане работы «сопутствующих» ядрам блоков, что в реальных (а не синтетических) условиях обеспечивало ему немалое преимущество. А вот в Ivy Bridge ничего существенного сделать было уже нельзя, так что независимо от того, оставила компания задел на будущее специально или какие-то узкие мосты нашли только сейчас, хорошо уже то, что их нашли и устранили.
Собственно, вот так он и выглядит — прогресс за последние три с лишним года. Сменив три поколения, архитектура Core стала выглядеть намного лучше изначального варианта. Впрочем, несложно заметить, что собственно вычислительные ядра в производительности «подросли» не так уж сильно — примерно процентов на 10. Однако за счет улучшения норм производства и внутренних оптимизаций удалось нарастить тактовые частоты. Причем как прямым, так и косвенным образом — за счет улучшений Turbo Boost. К тому же рост производительности сопровождался не ростом, а снижением энергопотребления — его удалось не только обуздать, но и повернуть вспять. А что будет дальше? Пока в точности не известно. Мы знаем только то, что платформа LGA1155 на этом этапе закончит свое развитие. Более того — имеется предварительная информация, что процессоры семейства Haswell для LGA1150 станут не доработанными Core (немало унаследовавшими от Core2 и предыдущих разработок), а представителями новой архитектуры, что позволит сделать вперед не шажок, а рывок. Исполнятся ли эти предсказания или (как часто случается) останутся лишь благими намерениями? Покажет только время.