3

Я пытаюсь отключить предварительную выборку оборудования в моей системе с процессорами Atom (N270).Как отключить prefetcher в процессоре Atom N270

Я следую методу по ссылке How do I programatically disable hardware prefetching in core2duo?

Я в состоянии выполнить,

./rdmsr 0x1a0 
366b52488 

однако, это дает сообщение об ошибке

./wrmsr -p0 0x1a0 0x366d52688 
wrmsr: Cpu 0 can't set MSR from 0x1a0 to 0x366d52688 

Хотя я могу установить бит 0 и бит-3, никакие другие биты не разрешено изменить.

./wrmsr -p0 0x1a0 0x366b52489 

По этой ссылке disable prefetcher in i3/i7 оборудования Prefetcher в Nehalem, Westmere, Sandy Bridge, Ivy Bridge, Haswell и Бродуэлла можно отключить с помощью MSR по 0x1a4 адресу.

В процессоре Atom чтение в 0x1a4 запрещено.

./rdmsr 0x1a4 

rdmsr: Cpu 0 can't read MSR from 0x000001a4 

Мне интересно, как это возможно, что нет никакой информации, связанной с как отключить аппаратную предвыборку в процессоре Atom, хотя Atom N270 и процессор Core2Duo выпускаются в том же год (2008 год) и как отключить предварительный набор оборудования в Core2Duo, раскрывается Intel.

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

ответ

2

Единственный надежный источник для поиска информации, такой как Руководство разработчика программного обеспечения Intel Architecture. Существует целая глава, посвященная MSR (в последней версии - глава 35).

  1. 0x1a4 или 0x1a0 адрес MSR, что вы нашли это зависит от машины (именно поэтому она называется Model Specific Register), что означает, что они могут быть доступны только на некоторых моделях, или, может быть удалена в будущих моделях.
  2. Если вы переходите к главе «MSRS в 45 NM и 32 NM INTEL® ATOMTM PROCESSOR FAMILY», которая соответствует вашему Atom N270. Вы не сможете найти MSR, связанную с настройкой prefetcher. Поэтому это означает, что в официальном выпуске Intel CPU он недоступен (хотя в некоторых технических примерах он может быть найден).
  3. Может быть две причины, по которым он недоступен, либо это не очень требуемая функция, поэтому удаление этого может спасти некоторые кремниевые ворота; или, возможно, это связано с тем, что Intel считает, что эта функция лучше всего оставлена ​​по умолчанию и не настраивается для публики (при неправильном использовании поставщиком или пользователем и приводит к плохой работе в определенных условиях).

Кстати, информация о 0x1a4 MSR адрес можно найти в IA SDM главы 35.5 и 0x1a0 в главе 35.2

+0

спасибо за ваш комментарий. Я пытаюсь сделать эксперимент для сравнения производительности с и без наличия предварительной выборки в другой архитектуре процессора. Поэтому я просто молюсь и стараюсь изо всех сил найти способ отключить prefetcher. – bholanath

+0

Благодарю вас за ваш комментарий. Я пытаюсь сделать эксперимент для сравнения производительности с и без наличия предварительной выборки в другой архитектуре процессора. Поэтому я просто молюсь и изо всех сил пытаюсь найти способ отключить prefetcher в моем процессоре ATOM.Я попытался установить likwid-инструмент, где упоминал, что он поддерживает процессор ATOM, однако я не могу установить likwid в ATOM из-за некоторой ошибки в сборке gcc/stream_sse.so - для многих операндов для xor, add, cmp, mov и т. Д. – bholanath

+0

Понимаю. Полностью поймите, что вы хотите играть с этими ручками. Я взглянул на инструмент, который вы упомянули. Если вы ищете предварительную выборку, вы найдете несколько мест, где это произошло. Из того, что я вижу, на процессорах Atom он поддерживает только чтение событий prefetcher. Он поддерживается Nehalem и после этого. –

Смежные вопросы