На что влияет объем кэш памяти

На что влияет объем кэш памяти

Выбирая процессор, рядовой покупатель в первую очередь смотрит на такие характеристики, как количество ядер и тактовую частоту. Но есть и ещё один важный параметр, который следует учитывать при покупке — объем кэш памяти.

Итак, насколько важна эта характеристика и как влияет на скорость вычислений?

Зачем нужна кэш память

В компьютере используется несколько типов памяти. Всем известны HDD/SSD для долгосрочного хранения информации и ОЗУ (RAM), которая при потере питания сбрасывает всё содержимое. Важное различие между ними — это скорость доступа к данным.

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

Процессоры давно способны выполнять такое количество команд в секунду, что их доставка из ОЗУ тормозит ход работы. Чтобы минимизировать эти задержки, задействуется сверхбыстрая кэш память и специальный контроллер внутри самого процессора. Контроллер по сложным алгоритмам предугадывает, какие данные в ближайшее время могут понадобиться и копирует их в кэш. Но на этом всё не заканчивается. Поступившие данные распределяются по уровням.

Уровни кэша: L1, L2 и L3

Кэш процессора разделен на три основных уровня: L1, L2 и L3. Отличаются они скоростью доступа и размером.

  • Кэш L1 (уровень 1) — это самая быстрая память которая присутствует в компьютере. С точки зрения приоритета, L1 содержит данные и команды, которые понадобятся в первую очередь. Размер обычно достигает 256 КБ, хотя некоторые топовые процессоры (типа Intel Xeon) могут иметь более 1 МБ.
  • Кэш L2 (уровень 2) медленнее, но больше по размеру. Объем в диапазоне от 256 КБ до 8 МБ. Содержит данные, которые также могут скоро потребоваться, но не уместились в L1. Память первых двух уровней встроена прямо в ядро процессора. То есть, у каждого ядра она своя.
  • Кэш L3 (уровень 3) — самая медленная из них, но и самая большая. Размер может достигать 62 МБ. Физически располагается внутри кристалла процессора, что позволяет обращаться к её содержимому намного быстрее, чем к ячейкам оперативной памяти.

Когда процессор ищет данные для выполнения операции, он последовательно начинает просматривать все уровни, начиная с L1 и заканчивая L3. Если поиск завершился неудачей, то приходиться обращаться к оперативной памяти, а это вызывает задержку в работе. Поэтому, чем объемней кэш, тем больше вероятность нахождения в нем нужных данных, а значит меньше задержек.

Влияние на скорость работы

Размер кэш памяти влияет на скорость работы программ, но почти всегда этот прирост незначителен за счет массы других факторов. Например, если производитель вдруг увеличит у конкретной модели процессора кэш L3 с 4 МБ до 8 МБ, то в лучшем случае, при выполнении некоторых приложений, получим прирост производительности на 10%. А при обычной работе это будет всего около 2%.

Таким образом, можно сделать вывод, что ориентироваться на объем кэш памяти при покупке процессора стоит в последнюю очередь. Хотя прогресс не стоит на месте и появляются новые идеи в устранении задержек при работе с данными. Например, компания Intel уже провела ряд экспериментов по внедрению кэша 4 уровня и останавливаться на этом не собирается.

Пример объема L3 буфера разных процессоров и их средняя цена:

Intel Celeron G4950 2 МБ 5 000 руб.
Intel Celeron G4500 3 МБ 4 500 руб.
AMD Ryzen 3 3200G 4 МБ 6 500 руб.
Intel Core i3-9100F 6 МБ 6 500 руб.
AMD Ryzen 5 1400 8 МБ 6 000 руб.
Intel Core i5-9400F 8 МБ 9 000 руб.
Intel Xeon E5-2623 v4 10 МБ 35 000 руб.
Intel Core i7-9700F 12 МБ 23 000 руб.
AMD Ryzen 7 2700 16 МБ 14 000 руб.
Intel Core i9-9900 16 МБ 35 000 руб.
Intel Xeon E5-2609 v4 20 МБ 22 000 руб.
Intel Xeon E5-2650 v4 30 МБ 80 000 руб.
AMD Ryzen 9 3900X 62 МБ 50 000 руб.

Кэш-память играет важную роль. Без нее от высокой тактовой частоты процессора не было бы никакого проку. Кэш позволяет использовать в компьютере любую, даже самую "медленную" оперативную память, без ощутимого ущерба для его производительности.

О том, что такое кэш-память процессора, как она работает и какое влияние оказывает на быстродействие компьютера, читатель узнает из этой статьи.

Содержание статьи

Что такое кэш-память процессора

Решая любую задачу, процессор компьютера получает из оперативной памяти необходимые блоки информации. Обработав их, он записывает в память результаты вычислений и получает для обработки следующие блоки. Это продолжается, пока задача не будет выполнена.

Все упомянутые операции производятся на очень высокой скорости. Однако, даже самая быстрая оперативная память работает медленнее любого "неторопливого" процессора. Каждое считывание из нее информации и обратная ее запись отнимают много времени. В среднем, скорость работы оперативной памяти в 16 – 17 раз ниже скорости процессора.

Не смотря на такой дисбаланс, процессор не простаивает и не ожидает каждый раз, когда оперативная память "выдает" или "принимает" данные. Он почти всегда работает на максимальной скорости. И все благодаря наличию у него кэш-памяти.

Кэш-память процессора – это небольшая, но очень быстрая память. Она встроена в процессор и является своеобразным буфером, сглаживающим перебои в обмене данными с более медленной оперативной памятью. Кэш-память часто называют сверхоперативной памятью.

Кэш нужен не только для выравнивания дисбаланса скорости. Процессор обрабатывает данные более мелкими порциями, чем те, в которых они хранятся в оперативной памяти. Поэтому кэш-память играет еще и роль своеобразного места для "перепаковки" и временного хранения информации перед ее передачей процессору, а также возвращением результатов обработки в оперативную память.

Устройство кэш-памяти процессора

Система кэш-памяти процессора состоит из двух блоков — контроллера кэш-памяти и собственно самой кэш-памяти.

Контроллер кэш памяти

Контроллер кэш памяти – это устройство, управляющее содержанием кэша, получением необходимой информации из оперативной памяти, передачей ее процессору, а также возвращением в оперативную память результатов вычислений.

Когда ядро процессора обращается к контроллеру за какими-то данными, тот проверяет, есть ли эти данные в кэш-памяти. Если это так, ядру моментально отдается информация из кэша (происходит так называемое кэш-попадание).

В противном случае ядру приходится ожидать поступления данных из медленной оперативной памяти. Ситуация, когда в кэше не оказывается нужных данных, называется кэш-промахом.

Задача контроллера – сделать так, чтобы кэш-промахи происходили как можно реже, а в идеале – чтобы их не было вообще.

Размер кэша процессора по сравнению с размером оперативной памяти несоизмеримо мал. В нем может находиться лишь копия крошечной части данных, хранимых в оперативной памяти. Но, не смотря на это, контроллер допускает кэш-промахи не часто. Эффективность его работы определяется несколькими факторами:

• размером и структурой кэш-памяти (чем больше ресурсов имеет в своем распоряжении контроллер, тем ниже вероятность кэш-промаха);

• эффективностью алгоритмов, по которым контроллер определяет, какая именно информация понадобится процессору в следующий момент времени;

Читайте также:  Повестка к сожалению у вас нет прав

• сложностью и количеством задач, одновременно решаемых процессором. Чем сложнее задачи и чем их больше, тем чаще "ошибается" контроллер.

Кэш-память процессора

Кэш-память процессора изготавливают в виде микросхем статической памяти (англ. Static Random Access Memory, сокращенно — SRAM). По сравнению с другими типами памяти, статическая память обладает очень высокой скоростью работы.

Однако, эта скорость зависит также от объема конкретной микросхемы. Чем значительней объем микросхемы, тем сложнее обеспечить высокую скорость ее работы.

Учитывая указанную особенность, кэш-память процессора изготовляют в виде нескольких небольших блоков, называемых уровнями. В большинстве процессоров используется трехуровневая система кэша:

Кэш-память первого уровня или L1 (от англ. Level — уровень) – очень маленькая, но самая быстрая и наиболее важная микросхема памяти. Ни в одном процессоре ее объем не превышает нескольких десятков килобайт. Работает она без каких-либо задержек. В ней содержатся данные, которые чаще всего используются процессором.

Количество микросхем памяти L1 в процессоре, как правило, равно количеству его ядер. Каждое ядро имеет доступ только к своей микросхеме L1.

Кэш-память второго уровня (L2) немного медленнее кэш-памяти L1, но и объем ее более существенный (несколько сотен килобайт). Служит она для временного хранения важной информации, вероятность запроса которой ниже, чем у информации, находящейся в L1.

Кэш-память третьего уровня (L3) – еще более объемная, но и более медленная схема памяти. Тем не менее, она значительно быстрее оперативной памяти. Ее размер может достигать нескольких десятков мегабайт. В отличие от L1 и L2, она является общей для всех ядер процессора.

Уровень L3 служит для временного хранения важных данных с относительно низкой вероятностью запроса, а также для обеспечения взаимодействия ядер процессора между собой.

Встречаются также процессоры с двухуровневой кэш-памятью. В них L2 совмещает в себе функции L2 и L3.

Влияние кэш-памяти процессора на быстродействие компьютера

При выполнении запроса на предоставление данных ядру, контроллер памяти ищет их сначала в кэше первого уровня, затем — в кэше второго и третьего уровней.

По статистике, кэш-память первого уровня любого современного процессора обеспечивает до 90 % кэш-попаданий. Второй и третий уровни — еще 90% от того, что осталось. И только около 1 % всех запросов процессора заканчиваются кэш-промахами.

Указанные показатели касаются простых задач. С повышением нагрузки на процессор число кэш-промахов увеличивается.

Эффективность кэш-памяти процессора сводит к минимуму влияние скорости оперативной памяти на быстродействие компьютера. Например, компьютер одинаково хорошо будет работать с оперативной памятью 1066 МГц и 2400 МГц. При прочих равных условиях разница производительности в большинстве приложений не превысит 5%.

Пытаясь оценить эффективность кэш-памяти, пользователи чаще всего ищут ответы на следующие вопросы:

Какая структура кэш-памяти лучше: двух- или трехуровневая?

Трехуровневая кэш-память более эффективна.

Чтобы определить, как сильно L3 влияет на работу процессора, сайтом Tom’s Hardware был проведен эксперимент. Заключался он в замере производительности процессоров Athlon II X4 и Phenom II X4. Оба процессора оснащены одинаковыми ядрами. Первый отличается от второго лишь отсутствием кэш-памяти L3 и более низкой тактовой частотой.

Приведя частоты обеих процессоров к одинаковому показателю, было установлено, что наличие кэш-памяти L3 повышает производительность процессора Phenom на 5,8 %. Но это средний показатель. В одних приложениях он был почти равен нулю (офисные программы), в других – достигал 8% и даже больше (компьютерные 3D игры, архиваторы и др.).

Как влияет размер кэша на производительность процессора?

Оценивая размер кэш-памяти, нужно учитывать характеристики процессора и круг решаемых им задач.

Кэш-память двуядерного процессора редко превышает 3 MB. Тем более, если его тактовая частота ниже 3 Ггц. Производители прекрасно понимают, что дальнейшее увеличение размера кэша такого процессора не принесет прироста производительности, зато существенно повысит его стоимость.

Другое дело высокочастотные 4-, 6- или даже 8-миядерные процессоры. Некоторые из них (например, Intel Core i7) поддерживают технологию Hyper Threading, обеспечивающую одновременное выполнение каждым ядром двух задач. Естественно, что потенциал таких процессоров не может быть раскрыт с маленьким кэшем. Поэтому его увеличение до 15 или даже 20 MB вполне оправдано.

В процессорах Intel алгоритм наполнения кэш-памяти построен по так называемой инклюзивной схеме, когда содержимое кэшей верхнего уровня (L1, L2) полностью или частично дублируется в кэше нижнего уровня (L3). Это в определенной степени уменьшает полезный объем его пространства. С другой стороны, инклюзивная схема позитивно сказывается на взаимодействии ядер процессора между собой.

В целом же, эксперименты свидетельствуют, что в среднестатистическом "домашнем" процессоре влияние размера кэша на производительность находится в пределах 10 %, и его вполне можно компенсировать, например, высокой частотой.

Эффект от большого кэша наиболее ощутим при использовании архиваторов, в 3D играх, во время кодирования видео. В "не тяжелых" же приложениях разница стремится к нулю (офисные программы, интернет-серфинг, работа с фотографиями, прослушивание музыки и др.).

Многоядерные процессоры с большим кэшем необходимы на компьютерах, предназначенных для выполнения многопоточных приложений, одновременного решения нескольких сложных задач.

Особенно актуально это для серверов с высокой посещаемостью. В некоторых высоконагружаемых серверах и суперкомпьютерах предусмотрена даже установка кэш-памяти четвертого уровня (L4). Изготавливается она в виде отдельных микросхем, подключаемых к материнской плате.

Как узнать размер кэш-памяти процессора?

Существуют специальные программы, предоставляющие подробную информацию о процессоре компьютера, в том числе и о его кэш-памяти. Одной из них является программа CPU-Z.

Программа не требует установки. После ее запуска нужно перейти на вкладку "Caches" (см. изображение).

На примере видно, что проверяемый процессор оснащен трехуровневой кэш-памятью. Размер кэша L3 у него составляет 3 MB, L2 – 512 KB (256×2), L1 – 128 KB (32×2+32×2).

Можно ли как-то увеличить кэш-память процессора?

Как уже было сказано в одном из предыдущих пунктов, возможность увеличения кэш-памяти процессора предусмотрена в некоторых серверах и суперкомпьютерах, путем ее подключения к материнской плате.

В домашних же или офисных компьютерах такая возможность отсутствует. Кэш-память является внутренней неотъемлемой частью процессора, имеет очень маленькие физические размеры и не подлежит замене. А на обычных материнских платах нет разъемов для подключения дополнительной кэш-памяти.

Одной из особенностей компьютеров на базе процессоров AMD, которой они выгодно отличаются от платформ Intel, является высокий уровень совместимости процессоров и материнских плат. У владельцев относительно не старых настольных систем на базе AMD есть высокие шансы безболезненно "прокачать" компьютер путем простой замены процессора на "камень" из более новой линейки или же флагман из предыдущей.

Если вы принадлежите к их числу и задались вопросом "апгрейда", эта небольшая табличка вам в помощь.

В таблицу можно одновременно добавить до 6 процессоров, выбрав их из списка (кнопка "Добавить процессор"). Всего доступно больше 2,5 тыс. процессоров Intel и AMD.

Пользователю предоставляется возможность в удобной форме сравнивать производительность процессоров в синтетических тестах, количество ядер, частоту, структуру и объем кэша, поддерживаемые типы оперативной памяти, скорость шины, а также другие их характеристики.

Дополнительные рекомендации по использованию таблицы можно найти внизу страницы.

Читайте также:  Как выгрузить адресную книгу из outlook 2010

В этой базе собраны подробные характеристики процессоров Intel и AMD. Она содержит спецификации около 2,7 тысяч десктопных, мобильных и серверных процессоров, начиная с первых Пентиумов и Атлонов и заканчивая последними моделями.

Информация систематизирована в алфавитном порядке и будет полезна всем, кто интересуется компьютерной техникой.

Таблица содержит информацию о почти 2 тыс. процессоров и будет весьма полезной людям, интересующимся компьютерным "железом". Положение каждого процессора в таблице определяется уровнем его быстродействия в синтетических тестах (расположены по убыванию).

Есть фильтр, отбирающий процессоры по производителю, модели, сокету, количеству ядер, наличию встроенного видеоядра и другим параметрам.

Для получения подробной информации о любом процессоре достаточно нажать на его название.

Люди обычно оценивают процессор по количеству ядер, тактовой частоте, объему кэша и других показателях, редко обращая внимание на поддерживаемые им технологии.

Отдельные из этих технологий нужны только для решения специфических заданий и в "домашнем" компьютере вряд ли когда-нибудь понадобятся. Наличие же других является непременным условием работы программ, необходимых для повседневного использования.

Так, полюбившийся многим браузер Google Chrome не работает без поддержки процессором SSE2. Инструкции AVX могут в разы ускорить обработку фото- и видеоконтента. А недавно один мой знакомый на достаточно быстром Phenom II (6 ядер) не смог запустить игру Mafia 3, поскольку его процессор не поддерживает инструкции SSE4.2.

Если аббревиатуры SSE, MMX, AVX, SIMD вам ни о чем не говорят и вы хотели бы разобраться в этом вопросе, изложенная здесь информация станет неплохим подспорьем.

Проверка стабильности работы центрального процессора требуется не часто. Как правило, такая необходимость возникает при приобретении компьютера, разгоне процессора (оверлокинге), при возникновении сбоев в работе компьютера, а также в некоторых других случаях.

В статье описан порядок проверки процессора при помощи программы Prime95, которая, по мнению многих экспертов и оверлокеров, является лучшим средством для этих целей.


ПОКАЗАТЬ ЕЩЕ

Сегодняшняя статья не является самостоятельным материалом — она просто продолжает исследование производительности трех поколений архитектуры Core в равных условиях (начатое в конце прошлого года и продолженное недавно). Правда, сегодня мы сделаем небольшой шаг в сторону — часто́ты ядер и кэш-памяти останутся теми же, что и ранее, а вот емкость последней уменьшится. Зачем это нужно? Мы использовали «полный» Core i7 двух последних поколений для чистоты эксперимента, тестируя его с включенной и отключенной поддержкой технологии Hyper-Threading, поскольку вот уже полтора года как Core i5 снабжаются не 8, а 6 МиБ L3. Понятно, что влияние емкости кэш-памяти на производительность не так уж велико, как иногда принято считать, но оно есть, и никуда от него не деться. К тому же, Core i5 являются более массовыми продуктами, чем Core i7, а в первом поколении по этому параметру их никто «не обижал». Зато раньше их чуть ограничивали по-другому: тактовая частота UnCore в i5 первого поколения составляла всего 2,13 ГГц, так что наш «Nehalem» — это не совсем представитель 700-й линейки на частоте 2,4 ГГц, а немного более быстрый процессор. Однако сильно расширять список участников и переделывать условия тестирования мы сочли излишним — все равно, как мы уже не раз предупреждали, тестирования этой линейки никакой новой практической информации не несут: реальные процессоры работают совсем в других режимах. А вот желающим досконально разобраться во всех тонких моментах, как нам кажется, такое тестирование будет интересно.

Конфигурация тестовых стендов

Процессор Nehalem Nehalem HT Ivy Bridge Ivy Bridge 6M
«Базовая» модель Core i7-875K Core i7-875K Core i7-3770K Core i5-3470
Технология пр-ва 45 нм 45 нм 22 нм 22 нм
Частота ядра, ГГц 2,4 2,4 2,4 2,4
Кол-во ядер/потоков вычисления 4/4 4/8 4/4 4/8
Кэш L1, I/D, КБ 32/32 32/32 32/32 32/32
Кэш L2, КБ 4×256 4×256 4×256 4×256
Кэш L3, МиБ 8 8 8 6
Частота UnCore, ГГц 2,4 2,4 2,4 2,4

Мы решили ограничиться всего четырьмя процессорами, причем главных участников будет два: оба четырехъядерных Ivy Bridge, но с разной емкостью кэш-памяти третьего уровня. Третий — «Nehalem HT»: в прошлый раз по итоговому баллу он оказался почти идентичен «Ivy Bridge просто». И «просто Nehalem» который, как мы уже сказали, чуть-чуть быстрее настоящего Core i5 первого поколения, работающего на частоте 2,4 ГГц (из-за того, напомним, что в 700-й линейке частота UnCore была немного ниже), но не слишком радикально. Зато и сравнение интересно: с одной стороны — два шага улучшения микроархитекутры, с другой — кэш-память ограничили. Априори можно предположить, что первое в большинстве случаев перевесит, но вот насколько и вообще — как сопоставимы «первые» и «третьи» i5 (с поправкой на частоту UnCore, конечно, хотя если будет много желающих увидеть абсолютно точное сравнение, мы и его потом сделаем) — уже хорошая тема для исследования.

Системная плата Оперативная память
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, в которой все результаты приведены как в преобразованном в баллы, так и в «натуральном» виде.

Интерактивная работа в трёхмерных пакетах

Некоторое влияние емкости кэш-памяти есть, однако оно менее 1%. Соответственно, оба Ivy Bridge можно считать идентичными друг другу, ну а улучшения архитектуры позволяют новым Core i5 спокойно обгонять старые Core i7 точно также, как это делают новые Core i7.

Финальный рендеринг трёхмерных сцен

В данном случае, естественно, никакие усовершенствования не могут скомпенсировать увеличение количества обрабатываемых потоков, но сегодня для нас самым важным является не это, а полное отсутствие влияния емкости кэш-памяти на производительность. Вот Celeron и Pentium, как мы уже установили, разные процессоры, так что программы рендеринга чувствительны к емкости L3, однако лишь тогда, когда последнего мало. А 6 МиБ на четыре ядра, как видим, вполне достаточно.

Упаковка и распаковка

Естественно, эти задачи восприимчивы к емкости кэш-памяти, однако и здесь эффект от ее увеличения с 6 до 8 МиБ достаточно скромный: примерно 3,6%. Более интересно, на самом деле, сравнение с первым поколением — архитектурные улучшения позволяют новым i5 на равных частотах «громить» даже старые i7, но это в общем зачете: благодаря тому, что два теста из четырех однопоточные, а еще один двухпоточный. Сжатие данных силами 7-Zip, естественно, быстрее всего на «Nehalem HT»: восемь потоков всегда быстрее четырех сравнимой производительности. А вот если ограничиться всего четырьмя, то наш «Ivy Bridge 6М» проигрывает не только своему прародителю, но и старичку Nehalem: улучшения микроархитектуры полностью пасуют перед уменьшением емкости кэш-памяти.

Читайте также:  Как обновить видео драйвера на windows 10

Кодирование аудио

Несколько неожиданным оказался не размер разницы между двумя Ivy Bridge, а то, что она вообще есть. Правда настолько копеечная, что ее можно и на особенности округления или погрешности измерения списать.

Компиляция

Важны потоки, но важна и емкость кэш-памяти. Однако, как обычно, не слишком — порядка 1,5%. Более любопытно сравнение с первым поколением Core при отключенном Hyper-Threading: «по очкам» новенький Core i5 даже на равной частоте побеждает, но один из трех компиляторов (производства Microsoft, если быть точным) отработал на обоих процессорах за одинаковое время. Даже с преимуществом в 5 секунд у более старого — притом, что в этой программе у «полнокэшевого» Ivy Bridge результаты на 4 секунды лучше, чем у Nehalem. В общем, и здесь нельзя считать, что уменьшение емкости L3 как-то сильно повлияло на Core i5 второго и третьего поколения, но есть и нюансы.

Математические и инженерные расчёты

Опять менее 1% разницы со «старшим» кристаллом и опять убедительная победа над первым поколением во всех его видах. Что скорее правило, чем исключение для подобных малопоточных тестов, но почему бы в нем в очередной раз не убедиться? Особенно в таком вот рафинированном виде, когда (в отличие от тестов в штатном режиме) не мешает разница в частотах («стандартных» или появляющаяся из-за работы Turbo Boost).

Растровая графика

Но и при более полной утилизации многопоточности картина не всегда меняется. А емкость кэш-памяти не дает вовсе ничего.

Векторная графика

И здесь аналогично. Правда и потоков вычисления нужна всего парочка.

Кодирование видео

В отличие от этой группы, где, тем не менее, даже Hyper-Threading не позволяет Nehalem бороться на равных с последователями более новых поколений. А вот им не слишком мешает уменьшение емкости кэш-памяти. Точнее, практически вообще не мешает, поскольку разница опять менее 1%.

Офисное ПО

Как и следовало ожидать, никакого прироста производительности от увеличения емкости кэш-памяти (точнее, ее падения от уменьшения) нет. Хотя если посмотреть на подробные результаты, то видно, что единственный многопоточный тест этой группы (а именно распознавание текста в FineReader) выполняется примерно на 1,5% быстрее при 8 МиБ L3, нежели на 6 МиБ. Казалось бы — что такое 1,5%? С точки зрения практики — ничто. А вот с исследовательской точки зрения уже интересно: как видим, именно многопоточным тестам чаще всего не хватает кэш-памяти. В результате разница (пусть и небольшая) иногда находится даже там, где ее быть, вроде бы, не должно. Хотя ничего такого уж необъяснимого в этом нет — грубо говоря, в малопоточных тестах мы имеем 3-6 МиБ на поток, а вот в многопоточных там же получается 1,5 МиБ. Первого — много, а вот второго может оказаться и не совсем достаточно.

Впрочем, Java-машина с такой оценкой не согласна, но и это объяснимо: как мы уже не раз писали, она очень хорошо оптимизирована вовсе не под х86-процессоры, а под телефоны и кофеварки, где ядер может быть много, но вот кэш-памяти очень мало. А иногда и ядер, и кэш-памяти мало — дорогие ресурсы как по площади кристалла, так и по энергопотреблению. И, если с ядрами и мегагерцами что-то сделать получается, то вот с кэшом все сложнее: в четырехъядерной Tegra 3 его, к примеру, всего 1 МиБ. Понятно, что JVM может «схрюпать» и больше (как и все системы с байт-кодом), что мы уже видели сравнивая Celeron и Pentium, но более 1,5 МиБ на поток ей если и может пригодиться, то не в тех задачах, которые вошли в SPECjvm 2008.

На игры у нас были большие надежды, поскольку к емкости кэш-памяти они нередко оказываются более требовательными чем даже архиваторы. Но бывает такое тогда, когда ее совсем мало, а 6 МиБ — как видим, достаточно. Да и, опять же, процессоры уровня четырехъядерных Core любых поколений даже на частоте 2,4 ГГц слишком мощное решение для используемых игровых приложений, так что узким местом явно будут не они, а прочие компоненты системы. Поэтому мы решили стряхнуть пыль с режимов с низким качеством графики — понятно, что для таких систем он слишком уж синтетичен, но у нас и все тестирование синтетическое 🙂

Когда не мешают всякие там видеокарты и прочее, разница между двумя Ivy Bridge достигает уже «безумных» 3%: и в этом случае можно не обращать внимания на практике, но для теории — немало. Больше вышло как раз только в архиваторах.

Многозадачное окружение

Где-то мы уже такое видели. Ну да — когда тестировали шестиядерные процессоры под LGA2011. И вот ситуация повторяется: нагрузка что ни на есть многопоточная, часть используемых программ до кэш-памяти «жадная», а вот ее увеличение только снижает среднюю производительность. Чем это можно объяснить? Разве что тем, что усложняется арбитраж и увеличивается количество промахов. Причем, заметим, происходит такое только тогда, когда емкость L3 относительно велика и одновременно работающих потоков вычисления не менее четырех — в бюджетном сегменте совсем другая картина. Во всяком случае, как показало наше недавнее тестирование Pentium и Celeron, для двухъядерных процессоров увеличение L3 с 2 до 3 МиБ добавляет 6% производительности. А вот четырех- и шестиядерным не дает, мягко говоря ничего. Даже менее, чем ничего.

Итого

Закономерный общий итог: поскольку нигде существенной разницы между процессорами с разным объемом L3 не обнаружилось, нет ее и в «общем и целом». Таким образом, расстраиваться по поводу уменьшения емкости кэш-памяти во втором и третьем поколении Core i5 поводов нет — предшественники первого поколения им все равно не конкуренты. Да и старые Core i7 в среднем тоже демонстрируют лишь аналогичный уровень производительности (разумеется, в основном за счет отставания в малопоточных приложениях — а так есть сценарии, с которыми в равных условиях они справляются быстрее). Но, как мы уже говорили, на практике реальные процессоры находятся далеко не в равных условиях по частотам, так что практическая разница между поколениями больше, чем можно получить в таких вот исследованиях.

Открытым остается лишь один вопрос: нам пришлось сильно снизить тактовую частоту для обеспечения равенства условий с первым поколением Core, но сохранятся ли замеченные закономерности в более близких к реальности условиям? Ведь из того, что четыре низкоскоростных потока вычислений не видят разницы между 6 и 8 МиБ кэш-памяти, не следует, что она не обнаружится в случае четырех высокоскоростных. Правда, не следует и обратного, так что для того, чтобы окончательно закрыть тему теоретических исследований, нам понадобится еще одна лабораторная работа, которой мы и займемся в следующий раз.

Ссылка на основную публикацию
Консольные команды для бателфилд 4
Встречаем и вновь возвращаемся в самый: динамический, красивый, технически богатый и самый заселённый мир с постоянно ведущимися боевыми действиями. Самый...
Как сделать чтобы флешка работала быстрее
Читайте как настроить оптимальную производительность внешнего диска или флешки и ускорить передачу данных на внешний носитель информации и чтение из...
Как сделать ярлык почты на рабочем столе
Хотите быстро писать письма друзьям? Часто пишите Email по работе? Тогда можно просто создать ярлык Email на Вашем рабочем столе...
Конструкция степлера канцелярского схема
Первые степлеры появились во Франции в XVIII веке, их специально изобрели для короля Людовика XV. Но в то время это...
Adblock detector