¿Por qué ha dejado de crecer la frecuencia de los procesadores?

Si bien hace unos años, tanto Intel como AMD estaban inmersas en una carrera por aumentar continuamente sus frecuencias, os habréis dado cuenta que éstas ya no suben de manera tan espectacular como antaño. En este artículo os vamos a explicar el motivo de ello y cómo los fabricantes de procesadores han cambiado el campo de juego.
Los motivos por los que ha dejado de crecer la frecuencia a la que se fabrican los procesadores actualmente son varios, pero aquí solo nos vamos a centrar en el principal, que son los problemas de las instrucciones en la transportadora (también denominada pipeline).
¿Qué es y cómo funciona la transportadora de instrucciones?
Funcionalmente, cada ejecución de las instrucciones de un procesador se divide en varios pasos o ciclos, como se ilustra en el siguiente diagrama. Eso es lo que denominamos la frecuencia de un procesador.
Cada uno de estos pasos sigue al anterior de manera secuencial, y cada uno de ellos se ejecuta en una unidad de cómputo diferente, de tal manera que cuando el primer paso de la primera instrucción se ha resuelto satisfactoriamente, el primero de la siguiente instrucción puede comenzar su procesado.
Todo eso está muy bien cuando cada uno de los pasos de las instrucciones tarda el mismo tiempo en realizarse. Pero, en la vida real eso no suele suceder y hay pasos que se completan con mayor celeridad que otros. De la misma manera, hay pasos que tardan más tiempo que el asignado y, en lugar de un ciclo de reloj, tardan dos de ellos.
Una persona podría pensar que la solución podría ser acortar la duración de los ciclos de reloj para que se amoldaran más a la duración de los pasos de la instrucción. Pero, aunque inicialmente esto sí supondría un aumento de rendimiento, a medida que los pasos que fueran más largos se fueran ejecutando en el núcleo, se irían creando latencias y tiempos muertos en los que no se trabajaría en las siguientes instrucciones.
¿Cómo se aumenta la frecuencia del procesador?
Así que, desde el punto de vista del transportador, la única manera de aumentar la frecuencia es acortar el paso más largo.
Si podemos reducir el paso más largo, existe la posibilidad de disminuir el tamaño del ciclo de reloj hasta este paso, y cuanto menor sea el ciclo de reloj, mayor será la frecuencia. Y para hacerlo, la mejor manera es reducir el tamaño interno de los componentes del procesador. Primero, porque de esa manera se acortan las vías de datos en el interior del procesador, con lo cual requieren menos energía para poder funcionar.
Y, segundo, porque los transistores que componen el núcleo, al ser más pequeños, requieren menos energía para poder activarse y desactivarse. Estas dos condiciones lo que permiten es una inferior generación de energía desperdiciada como calor.
No hay más que pensar en cómo se estabilizan los overclocks cuando los hacemos, que es a base de permitir que el procesador funcione con un voltaje (denominado Vcore) mayor que el que el fabricante ha previsto para ese modelo.
Y ese voltaje extra nos permite aumentar la frecuencia del procesador, pero lo hace a costa de sacrificar su eficiencia energética y de requerir de soluciones de refrigeración bastante más avanzadas que los tradicionales disipadores por aire.