Аппаратная предварительная выборка в corei3 - PullRequest
3 голосов
/ 12 июля 2011

Corei3 поддерживает аппаратную предварительную выборку с помощью аппаратной предварительной выборки?Если да, как мне включить / отключить его?

Ответы [ 2 ]

6 голосов
/ 12 марта 2012

Процессоры Intel Core i3 определенно поддерживают аппаратную предварительную выборку, хотя в документации Intel, как правило, очень мало деталей. Фирменное наименование «Core i3» относится как к процессорам на базе Nehalem, так и к процессорам Sandy Bridge, поэтому вам нужно проверить конкретный номер модели, чтобы узнать, с какой вы имеете дело.

Чтобы усложнить задачу, новые процессоры Intel (Nehalem / Westmere / Sandy Bridge) имеют несколько различных аппаратных предварительных загрузчиков - по крайней мере три упомянуты в Руководстве разработчика программного обеспечения для архитектуры Intel, том 3B (публикация 253669). В таблице 30-25 «Определение поля типа запроса MSR_OFFCORE_RSP_x» упоминаются «Предварительная выборка DCU» и «Предварительная выборка L2». Они также упоминаются в Приложении A-2, Таблица A-2, где описываются события счетчика производительности для процессоров Core i7, i5 и i3. Событие 4EH в Таблице A-2 упоминает, что существуют как «предварительные сборщики H1-стримера, так и IP-протоколы (IPP)». На эту тему есть еще несколько слов в соответствующей записи (для события 4EH) в Приложении A.4, Таблица A-6, которая описывает счетчики производительности для процессоров Westmere.

Приложение B-2, таблица B-3 в том же документе обсуждает MSR (специфичные для модели регистры) для микроархитектуры Intel Core, но похоже, что многие из них переносятся в более новые версии. Регистр 1A0h показывает, что 4 бита управляют поведением предварительной выборки:

  • Бит 9: аппаратный предварительный выбор отключен
  • Бит 19: предварительная выборка соседней строки кэша отключена
  • Бит 37: предварительный выбор DCU отключен
  • Бит 39: IP Prefetcher отключен

Инструменты для включения и отключения предварительной выборки обсуждаются в: Как программно отключить аппаратную предварительную выборку?

1 голос
/ 17 октября 2013

Да, аппаратный prefetcher существует в машине Core i3 / i7, но вы НЕ МОЖЕТЕ отключить их в i3 / i7. Два способа отключить предварительную выборку (1), изменив бит msr (2) в BIOS. Intel перестала поддерживать оба способа отключения в i3 / i7.

Ссылка из комментария: https://software.intel.com/en-us/articles/disclosure-of-hw-prefetcher-control-on-some-intel-processors Раскрытие управления предварительным сборщиком H / W на некоторых процессорах Intel - Виш Вишванатан (Intel), 24 сентября 2014 г.

В этой статье раскрывается настройка MSR, которая может использоваться для управления различными ч / б-устройствами предварительной выборки, доступными на процессорах Intel на основе следующих микроархитектур: Nehalem, Westmere, Sandy Bridge, Ivy Bridge, Haswell и Broadwell.

Вышеупомянутые процессоры поддерживают 4 типа ч / б предварительной выборки для предварительной выборки данных. Имеется 2 средства предварительной выборки, связанные с кэшем данных L1 (также известный как модуль предварительной выборки DCU DCU, модуль предварительной настройки IP-адреса DCU ) и 2 средства предварительной выборки, связанные с кэшем L2 (аппаратный предварительный выборщик L2, средство предварительной выборки смежной линии L2) .

На каждом ядре имеется регистр, зависящий от модели (MSR) с адресом 0x1A4, который можно использовать для управления этими 4 устройствами предварительной выборки. Биты 0-3 в этом регистре могут использоваться для включения или отключения этих предварительных сборщиков. Другие биты этого MSR зарезервированы.

...