[LUG.ro Mix] FLOPS de micros
Gustavo Badaloni
gbadaloni en gmail.com
Lun Ago 25 02:46:15 ART 2008
> Lo que me interesa medir es el poder de calculo de cada procesador por
> segundo. En especial, de calculos en punto flotante.
> Por lo que estuve viendo, lo que se hace (para ahcer el ranking de HPC
> al menos) es calcular los flops (no usar los que dicen que tienen ...
> que ademas nunca los encotre) tirandoles una matriz tranqui que tenga
> que hacer 100 operaciones, y el tiempo que tarda se lo divide por 100,
> eso da un calculo aproximado (bastante fea la cota pero en fin ....)
> de cuanto tarda en hacer una op en punto flotante (FLOP)... o cuantas
> hace por segundo (dependideno que division hagas no?) (FLOPS). Queda
> totalmente fuera del objetivo ver cual uso menos instrucciones o cosas
> por el estilo, basicamente ... el que termina antes de hacer las 100
> op es el mas rapido.
>
> La Idea detras de esto es buscar al forma de cuantificar el tiempo de
> calculo empleado, de manera de saber al final del dia (por ejemplo)
> cuanto se uso (en una medida cuantitativa ... comparable) del poder de
> calculo de una maquina (o un grupo :) )
Lo que trataba de decir era que unidades como mips o flops son un poco
engañosas (y víctimas del marketing en muchos casos) para predecir el
rendimiento de un procesador, porque depende en gran medida del diseño que
éste tenga. Un procesador puede producir una gran cantidad de flops, pero
usar ese cálculo de manera ineficiente. A ésto me refería con la cantidad de
instrucciones, que sí es importante, porque puede pasar que para resolver una
misma tarea distintos procesadores necesiten hacer distinta cantidad de
flop's, entonces no se puede decir de manera lineal "el que mas flops hace es
el mejor".
Me olvidé de mencionar que el rendimiento también depende del tipo de programa
que vayas a correr, como por ejemplo cálculo matemático, compilar un
programa, trabajar con audio, renderizar video o comprimir un archivo. Todas
estas tareas influyen de forma distinta en el uso del procesador. Por lo
tanto podes tener un determinado valor de flops para un micro pero distintos
rendimiento en cada programa, e incluso te puede pasar que distintos micros
sean mejor para cada tipo de tarea, entonces si un procesador A, por ejemplo,
te comprime dos horas de video más rapido que un procesador B, eso no es
garantía de que A tambien va a resolver una matriz X más rápido que B, salvo
obviamente que su diferencia tecnológica sea muy grande (por ej core2duo vs
celeron).
Por lo tanto estaría bueno que nos cuentes con que finalidad estás midiendo el
poder de cálculo de éstos procesadores.
Saludos
Más información sobre la lista de distribución Lugro-mix