El rendimiento por vatio es uno de los elementos que el marketing utiliza habitualmente para promocionar sus productos como una métrica de rendimiento. ¿Pero es realmente válida esta métrica o es un truco de humo y espejos? Os vamos a explicar el motivo por el cual no os tenéis que basar en esta métrica exclusivamente para saber si un producto es mejor que otro.
Uno de los temas que más “preocupan” a las personas es el consumo energético, especialmente en los tiempos donde el cambio climático es un tema que ha pasado del mundo del ecologismo a la esfera política. Lo que lo ha convertido en un tema de masas y ha abierto la oportunidad para la venta y promoción de productos más conscientes con el cambio climático.
Rendimiento por vatio como marketing engañoso
El problema del rendimiento por vatio es que solamente tiene importancia cuando es una métrica en la que ganan las compañías. Si lo pensamos fríamente nadie compra hardware por su rendimiento/consumo sino por la capacidad que tiene para realizar el trabajo para el que ha sido diseñado.
Cuando hablamos de rendimiento/vatio, al contrario de otras tasas, las cuales se basan en un valor denominador fijo como es el tiempo, ya sean fotogramas por segundo, operaciones de coma flotante por segundo, etc. Es que el concepto vatio es variable por los fabricantes y colocan el valor en el denominador que más les interesa.
Para que lo entendías, el rendimiento por vatio varía según la cantidad de vatios que le coloquemos al denominador a la hora de hacer el cálculo, por lo que un mismo procesador puede tener varios rendimientos/vatio distintos.
El truco es fácil de demostrar
La cantidad de vatios de consumo depende de tres valores, de los cuales tenemos dos de ellos que no son fijos y son totalmente configurables: voltaje y velocidad de reloj, pero especialmente el voltaje.
Por eso existe el undervolt, que consiste en bajar el consumo energético bajando solamente el voltaje, pero sin bajar la velocidad de reloj. Un procesador o una tarjeta gráfica que haya recibido un undervolt tiene un rendimiento/vatio más alto que uno que no lo ha recibido.
El rendimiento por vatio no es constante
Cuando comparamos tasas donde el denominador es el tiempo este se trata como una constante que no varía, un segundo es un segundo y dura lo que dura. En cambio, dentro de un mismo procesador el rendimiento por vatio depende de la cantidad de vatios en el denominador.
Por lo que las compañías tienen lo que se llama en inglés un “sweetspot” que es la cantidad de vatios en el que su arquitectura tiene el pico de rendimiento/vatio. Esto lleva a comparativas engañosas donde se comparan procesadores de diferentes marcas en un nivel de consumo concreto.
Trucos engañosos para falsear la cantidad de vatios
Existe un truco que es el hecho de medir el rendimiento desconectando algunas interfaces de E/S durante las pruebas de rendimiento. Las interfaces de E/S que son esenciales se ven completamente desconectadas en las pruebas de rendimiento para medir el rendimiento/vatio.
Aunque os parezca sorprendente, el hecho de mover los datos consume mucha más energía que ejecutar una instrucción, es por ello que algunos procesadores lo que hacen es tener diferentes dominios energéticos y desconectan el dominio de los periféricos de E/S en la mayoría de pruebas de rendimiento.
Otro truco que se utilizan es el hecho de marcar la cache como si fuese memoria RAM, de esta manera si el benchmark es lo suficientemente pequeño trata la cache de último nivel como si fuera RAM, esto evita tener que utilizar la interfaz de memoria externa del procesador, la cual es la que más consume.