Anterior Siguiente Indice

2. Qué son los BogoMIPS

De un mensaje de Lars Wirzenius wirzeniu@kruuna.Helsinki.fi del 9 de Septiembre de 1993, explicando qué los BogoMIPS, con información detallada adicional de Wim van Dorst:

``MIPS'' es la abreviatura de ``Millions of Instructions Per Second Millones de Instrucciones Por Segundo ''. Es una medida de la velocidad de ejecución de un programa. Como la mayoría de tales medidas, frecuentemente se abusa de ella en vez de usarse correctamente (es difícil comparar con justicia MIPS para diferentes tipos de ordenadores).

Los BogoMIPS son una invención de Linus. El núcleo (żo era un controlador de dispositivo?) necesita un bucle de temporización (el tiempo es demasiado corto y/o necesita ser demasiado exacto para poder emplear un método de espera no basado en bucles de retardo), que tiene que ser calibrado con la velocidad de procesador de la máquina. Por lo tanto, el núcleo mide durante la secuencia de arranque cómo de rápido se ejecuta en el ordenador un determinado tipo de bucle de retardo. ``Bogo'' viene de ``bogus'', que significa ``algo que es engañoso, incorrecto, falso''. Por consiguiente, el valor de los BogoMIPS da una cierta indicación acerca de la velocidad del procesador, pero de forma escasamente científica como para ser llamado de otra manera más que ``BogoMIPS''.

Las razones (hay dos) por las cuales se muestra durante el arranque son:

Los BogoMIPS están definidos en /usr/src/linux/init/main.c (un algoritmo simple en C), y la variable correspondiente del núcleo loops_per_sec se usa en varios controladores de dispositivo en las secciones net, scsi y char. Las verdaderas funciones de retardo están en ensamblador, y por lo tanto cada plataforma tiene su propia función en include/asm/delay.h. Esta variable loops_per_sec se usa en varios controladores para los dispositivos char, net y scsi (ver

find /usr/src/linux -name '*.[hcS] -print -exec fgrep
loops_per_sec {} \;
)


Anterior Siguiente Indice