SPEC CPU2000. Часть 9. Влияние объема L2 кэша


Мы уже рассматривали результаты тестирования процессоров семейства Intel Pentium 4, которые выпускаются с тремя вариантами L2 кэша — 128, 256 и 512 КБ. С выходом нового процессора от AMD — Athlon XP 3000+ с увеличенным относительно предшественников объемом кэша, можно обобщить данные и оценить влияние размера L2 кэша на результаты теста SPEC CPU2000.

На графиках представлен % прироста от увеличения объема кэша для трех пар процессоров:

  • Intel Celeron 1,7 и Pentium 4 1,7
  • Intel Pentium 4 2,0 и Pentium 2,0A
  • AMD Athlon 2700+ и Athlon XP 3000+

Использовались платформы на i850E+PC4200 и nForce2+DDR333 (двухканальный режим) для процессоров Intel и AMD соответственно. Данные для построения диаграмм получались с использованием разных конфигураций компиляторов, однако покольку мы не приводим абсолютных цифр, то это не существенно.

Итак, начнем с CINT2000.


Результаты 164.gzip показывает, что 128 КБ кэша второго уровня явно недостаточно для быстрой работы его алгоритмов. Более того, в половине подтестов именно переход от 128 к 256 КБ L2 кэша показывает наибольший рост скорости выполнения задач.

Кроме того можно выделить группу 175.vpr, 256.bzip2 и 300.wolf. (частично и 176.gcc), которой мало 256 КБ и на 512 они чуствуют себя гораздо лучше.

Продолжает радовать своим безразличием 252.eon. Этот интересный тест реагирует только на частоту центрального процессора (ну и модель конечно) и не замечает такие важные паметры ПК, как скорость системы памяти, частоту FSB и, как показала приведенная диаграмма, объем кэша L2.

Что касается сравнения пары Barton-Thoroughbred с Northwood-Willamette, то в некоторых тестах (175.vpr, 256.bzip2, 300.wolf) мы видим примерно одинаковый прирост скорости, в то время как в других заметно меньший (186.crafty, 253.perlbmk, 245.gap, 255.vortex). Особенно выделяется 164.gzip, в котором эффекта от нового ядра AMD практически нет. Возможно, что в данном случае сработала особенность взаимодействия L1 и L2 кэшей процессора Athlon XP (эксклюзивность данных), а тесту достаточно и (например) 300 КБ.

Обратите также внимание на тесты 164.gzip и 256.bzip2. Не смотря на то, что алгоритмы выполняют одинаковые функции (упаковку данных), их отношение к объему кэша разное.

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

Теперь посмотрим на CFP2000.


Как видно из результатов, большинство приложений CFP2000 заметно меньше чем задачи CINT2000 реагирует на увеличение объема L2 кэша. В частности отсюда можно сделать предположение, что для научных расчетов (вещественная арифметика, большие массиыы данных) вполне допустимо использование процессоров Celeron с небольшим кэшем L2 и покупать полноценный Pentium 4 совсем не обязательно. Хотя конечно если судить по предшествующей диаграмме непосредственно компиляция программ будет проходить на них медленнее :) Другой (но конечно заметно более дорогой) альтернативой является применение процессоров с гозаздо большим кэшем, например некоторых моделей Intel Xeon MP.

Максимальный рост в тестах чаще всего показывает пара 128-256 КБ. Это явно свидетельствует, что 256 КБ лучше 128. Однако в целом рост не такой значительный, как для приложений CINT2000.

Есть в результатах и интересные моменты. В частности обратите внимание на пару 171.swim и 179.art. Эти два теста наиболее чуствительны к скорости системы памяти. Однако в то время как первый отреагировал на возросший в два раза c 128 КБ L2 кэш процессора Intel, для второго это даже ухудшило результат.

Отметим и прирост более чем в 40% для ядра Barton в подтесте 188.ammp. Несмотря на то, что тест использует порядка 14МБ оперативной памяти в своей работе, L2 кэш общим объемом в 640 КБ ему сильно помогает. Конечно это синтетический тест, однако он показывает возможные пределы изменения производительности для реальных приложений.

Есть в CFP2000 и свой 252.eon :) Это тест 200.sixtrack, который никак отметил увеличение кэшей процессоров.

Заключение

Итак, исследование зависимости результатов SPEC CPU2000 от объема кэша второго не принесло особенных сюрпризов и подтвердило результаты других тестов.

  1. Для большинства прикладных приложений (читай — работающих с целыми числами) использование кэша второго уровня у процессора Celeron объемом 128 КБ заметно снижает производительность по сравнению с полноценными ядрами Pentium 4.
  2. Повышение объема L2 кэша у ядер Barton и Northwood до 512 КБ является логичным шагом на пути повышения производительности для широкого класса задач.
  3. Существуют задачи (работающие с большими массивами данных), которым мало и 256 и 512 КБ кэша. Для них более важным является пропускная способность системы памяти и процессорной шины (ну и конечно скорость самого процессора).



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

iXBT BRAND 2016

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

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

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

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