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 КБ кэша. Для них более важным является пропускная способность системы памяти и процессорной шины (ну и конечно скорость самого процессора).



7 апреля 2003 Г.

SPEC CPU2000: 9 - L2

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 . ( ).