Velocidad o Frecuencia de reloj

¡Lo que la publicidad puede hacer para cambiar el sentido de una palabra!
Fecha: 2006-03-19 13:47:19por: A. David Garza Marín (david-csd@garza.mx)

Es increíble la fuerza que puede tener la mercadotecnia para convencernos de utilizar equivocadamente determinados vocablos de forma indistinta. Tenemos el ejemplo de la palabra "Velocidad". Pero para introducirnos en el tema, haré un símil: le contaré que hace unos días estuve en la Ciudad de Aguascalientes, y resolví ir en mi auto. Como el camino lo permite, fui a una velocidad entre las 2500 y las 2750RPM. ¡Rápido! ¿No le parece?

Tal vez usted, estimado lector, se habrá preguntado qué velocidad es esa. Pudo haber pensado, "sí, ¿en qué auto? ¿Qué motor? ¿En qué cambio en la caja de velocidades?". ¡Pero el único dato son las RPM (la aceleración) del motor! Je, pues ése es el problema: La velocidad de un auto no se mide en RPM, sino en KM/h. Si yo le hubiese dicho que iba entre 120 y 130KM/h, de inmediato habría sabido a qué velocidad iba.

Pues bien, ¿alguna vez se ha preguntado cuánta velocidad son 3.2GHz? La verdad es que no nos es fácil saberlo, dado que el único dato que tenemos es la frecuencia de reloj. Un hercio no es más que un ciclo de reloj. ¿Entonces los procesadores procesan ciclos de reloj? ¡Claro que no, procesan instrucciones! Entonces, ¿cuántas instrucciones son 3.2GHz? ¿Lo sabe?

Catalogar a los procesadores por hercios es tan impráctico como hacerlo con los autos por RPM. Sin embargo, la mercadotecnia nos ha convencido de usar indistintamente las palabras "velocidad" y "aceleración" (o "frecuencia de reloj") para referirnos a la eficiencia de un procesador. De hecho, en un auto la velocidad se observa en el velocímetro y la aceleración en el tacómetro –o sea que son cosas distintas–.

Dado que un procesador lo que ejecuta son instrucciones, la verdadera velocidad de un procesador en realidad se mide en la cantidad de instrucciones procesadas en un determinado tiempo (en un segundo). ¿Cómo saber cuántas instrucciones se procesan? Difìcil dato, precísamente cuando lo único que se ofrece es la frecuencia de reloj como fuente de información. Pero démonos la oportunidad de especular...

Imaginemos que un procesador ejecutase una instrucción en cada ciclo de reloj. Ello nos llevaría a que un procesador de 3.2GHz/s ejecutaría 3,200,000,000 de instrucciones por cada segundo (3200 Millones de Instrucciones Por Segundo, o 3200MIPS). ¡Vaya! Son muchas instrucciones y, entonces, la verdad ha sido develada: entre mayor la frecuencia de reloj, ¡mayor su velocidad! Err… Buen intento… Pero no, no es tan sencillo.

Si obtiene e instala el programa SiSoftware Sandra desde www.download.com (haga clic en el hipervínculo para obtenerlo), verá a lo que me refiero. Este programa, entre otras cosas, tiene un módulo que se llama CPU Aritmethic Benchmark, mismo que ofrece resultados en MIPS del procesador (y que aparecen a la derecha del procesador elegido). Si lo abre, verá que ya existe una base de datos con resultados promedio. Busque el que dice "Intel Pentium 4-E 540 3.2GHz 1ML2 (Win32 x86)". Si la versión de SiSoftware Sandra que obtuvo es la misma XII que yo tenía al momento de escribir este texto, a la derecha verá que dice 6277MIPS (vea la figura 1), y no los 3200 que esperábamos. A ver, aquí ya brinca algo.


Figura 1

Hagamos algunos sencillos números: No son 3200, sino 6277 MIPS los que ejecuta este procesador. Eso significa que por cada ciclo, no es una, sino 1.96156 instrucciones (6277/3200) por ciclo (IPC) las que ejecuta. ¡Interesante! Con este dato complementario sabremos que un procesador de 3.4GHz tiene una velocidad de 6669MIPS (1.96156*3400), uno de 3.6GHz será de 7061MIPS, y uno de 3.8GHz, 7452MIPS. ¡Ahora ya sabemos la velocidad de estos procesadores!

Ahora le ruego que busque el procesador que dice "AMD Athlon 64 3200+ (2GHz) 512L2 (Win32 x86)". Fíjese en los MIPS, ¡7223MIPS! ¡Auch! ¡A pesar de tener una menor frecuencia de reloj, es igual de rápido que el de 3.2GHz! Al dividir 7223/2000 obtenemos que el procesador ejecuta 3.6115 instrucciones por ciclo. Con este sencillo dato veremos que un AMD Athlon 64 3500+ (2.2GHz) ejecuta 7945MIPS (3.6115*2200), el 3800+ (2.4GHz) ejecuta 8667MIPS, y así sucesivamente.

Ahora bien, puede hacer lo mismo en cuanto a tecnologías de doble núcleo (nuevamente, vea la figura 1). Busque el procesador "Intel Pentium 4-D [2 Core] 840 3.2GHz 2x1ML2 (Win32 x86)". Verá que éste (que es el más alto de los procesadores Intel de consumo [mainstream] registrados en esta versión de Sandra) tiene una velocidad de 12553MIPS. Con ello, descubrimos que su IPC (12553/3200) es de 3.9228. En el caso del "AMD Athlon 64 X2 4800+ [2 Core] 2.4GHz 2x1ML2 (Win32 x86)", la velocidad es de 17335MIPS, por lo tanto su IPC (17335/2400) es de 7.2229. Así, un procesador AMD Athlon 64 X2 modelo 4200+ puede tener el mismo o mayor rendimiento que un Intel Pentium-D 840 (y ello, sin contar con la reducción en el consumo de electricidad y la reducción en la generación de calor y ruido).

De esta forma, puede verse y constatarse que los megahercios no son una medida confiable de velocidad del procesador; también hace falta saber el IPC –es decir, cuántas instrucciones ejecuta el procesador por cada ciclo de reloj–. Ahora, cuando vea un procesador, no piense en hercios, sino en velocidad REAL. Si puede, cargue en un USB el SiSoftware Sandra y ejecute la prueba en cada equipo que vea. Haga su elección por los MIPS (y, obvio, en las características del equipo) y no por los hercios. Los MIPS pueden ser una gran guía, aunque no es la única, hay muchos otros factores. Pero el factor más importante es su propia satisfacción a la hora de utilizar un equipo que haya decidido comprar: que no se sienta limitado, sino que pueda darle rienda suelta a su productividad. ¡Nos seguimos leyendo!


Más artículos de A. David Garza Marín
Artículos de hoy en Lapalabra.com

Fecha: 2006-03-19 13:47:19por: A. David Garza Marín (david-csd@garza.mx)