Как отключить все прерывания процессора для достижения максимальной скоростиLinux

Ответить
Anonymous
 Как отключить все прерывания процессора для достижения максимальной скорости

Сообщение Anonymous »

Я читаю ostep и только что закончил введение в MLFQ.
Давайте рассмотрим очередь с самым высоким приоритетом для моего qn, поэтому задачи в ней планируются по принципу RR с интервалом времени скажем, 10 мс (я понятия не имею, каково это значение на современном процессоре, но в книге 2008 года написано 10 мс). В предыдущих главах я читал, что операционная система восстанавливает контроль, используя прерывания по таймеру примерно каждые 1 мс.
Это означает, что при выполнении задачи с высоким приоритетом в течение 10 мс происходит 10 прерываний ( 1 каждые 1 мс) и каждый раз планировщик говорит, что нужно продолжать выполнять одну и ту же задачу? это звучит как огромные накладные расходы, в которых нет необходимости.
Я пытался придумать объяснения, которые имели бы смысл, вот мои мысли:
Частые прерывания необходимы на случай, если ОС захочет запустить что-то на стороне ядра в любой момент, она не будет оптимизирована, чтобы заставить ОС ждать 10 мс, хотя, возможно, у нее есть какие-то важные вещи, которые нужно выполнить как можно скорее (я понятия не имею, что за задача это может быть)
Кроме того, я читал о режиме NO_HZ для отключения прерываний тактового сигнала по расписанию, поэтому мне интересно, являются ли тактовые часы планирования теми же часами, что и те, которые упоминаются в книге, создающей «таймер» прерывания", и если существуют разные типы часов, выдающие разные типы прерываний, которые можно отключить и т. д.

Подробнее здесь: https://stackoverflow.com/questions/783 ... -out-speed
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»