BogoMIPS

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

BogoMIPS (от англ. bogus (поддельный) и MIPSангл. Millions of Instructions Per Second) — в ядре Линукс способ измерения скорости исполнения инструкций на компьютере, предназначенный для калибровки внутренних циклов. Термин изобрёл Линус Торвальдс в 1993. BogoMIPS шутливо определяется как «сколько миллионов раз в секунду компьютер может абсолютно ничего не делать». Несмотря на наличие MIPS в названии величины, она ненаучна и не является метрикой общей производительности.

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

При начальной загрузке ядра выдаётся сообщение примерно такого вида:

Calibrating delay loop… 2994.99 BogoMIPS

Во время работы значение BogoMIPS можно узнать, прочитав файл /proc/cpuinfo

Величина BogoMIPS обычно пропорциональна тактовой частоте процессора, но также зависит от архитектуры и микроархитектуры процессора и работы кэша.

Для многих современных процессоров (x86, SPARC, 68k, Alpha 21264), величина BogoMIPS близка к удвоенной частоте.[1]

Интересные факты[править | править исходный текст]

  • Использование инструкций nop в цикле задержки без калибровки может приводить к странным последствиям, так как некоторые x86 процессоры, выпущенные в 2010-ых, способны исполнять до 4 операций nop каждый такт[2].

Примечания[править | править исходный текст]

  1. BogoMips mini-Howto, "2.2 How to estimate what the proper BogoMips rating should be": "... clock * 2.00"
  2. www.agner.org/optimize/instruction_tables.pdf‎

Ссылки[править | править исходный текст]