Влияние латентности памяти на производительность процессоров
Многоядерные монстры Nehalem-EX и Nehalem-EP поражают своими характеристиками. Однако какие высоты скорости можно покорить с этими процессорами? 32-нм Gulftown Nehalem-EP с шестью ядрами должен запускаться на 3,6 ГГц, а возможно и 4,5 ГГц с хорошим охлаждением. Что касается 8-ядерного Nehalem-EX, даже его 2,26 ГГц могут при некоторых условиях быть сравнимы с 3,2 ГГц других CPU.
Как же на самом деле обстоят дела с разгоном этих процессоров? Даже относительно Core i7, говоря о "родной" тактовой частоте, она подразумевается только для четырех ядер и кэшей L1 и L2. Общий 8-Мб L3-кэш, контроллер памяти и интерфейс QPI имеют собственную, асинхронную по отношению к общей частоту. Это обстоятельство позволяет лучше разгонять собственно ядра, но ценой скорости доступа к "неядерным" элементам процессора. К слову, чипы AMD Barcelona и Shanghai и настольный вариант Phenom обладают той же особенностью.
Достигнув для CPU видимого на экране значения 4 ГГц, на самом деле кэш третьего уровня и процессорный контроллер памяти будут работать на 2,26 ГГц в случае использования памяти DDR3 1333, то есть на удвоенной ее частоте. Для Nehalem-EX, обладающего 24-Мб кэшем третьего уровня, 4 каналами памяти и 4 шинами QPI нет возможности достичь очень высоких частот, но все же тесты производительности основываются на анализе всех параметров работы процессора, а не только "голых" мегагерц.
Итак, для кэш-памяти L1 настольного Core i7, работающего на 3,33 ГГц тест задержки памяти Sandra 2009 latency test покажет 4-тактную задержку в сравнении с 3-тактной для кэша того же объема у Core 2, тогда как L2 даст 10 тактов, а для общей кэш-памяти третьего уровня объемом 8 Мб этот показатель варьируем от 37 до 46, обозначая зависимость от "внеядерных" частей процессора. 12 Мб разделенной (по 6 Мб для каждой пары ядер) кэш-памяти второго уровня Core 2 показывают всего 16-18 тактов.
По циркулирующим в интернете слухам, в грядущем 32-нм Sandy Bridge должны быть некоторые улучшения по части временных задержек. Для 32-Кб L1 это будут 3 такта, 256-Кб L2 - 9 и показатель для общей 8-Мб кэш-памяти L3 составит 25 тактов, что достаточно неплохо для работающей одновременно с четырьмя ядрами.
В итоге, на скорость работы процессора влияет далеко не только его частота. Даже в рамках одной линейки чипов разные степпинги могут иметь отличия в техническом исполнении. Наряду с встроенным контроллером памяти высокоинтегрированные CPU будут все более усложнятся, нивелируя значение одних только частот ядер как универсальной шкалы производительности.