Blog Personal.

Conceptos Básicos

El Elefante en la habitación

Aprovecharé para hablar de términos como el Fin del Escalamiento de Dennard, el Fin de la Ley de Moore y el Silicio Oscuro.

La formula general para el consumo energético de un procesador es:

Consumo = Q*f*C*V2

Donde:

  • Q es la cantidad de transistores activos.
  • f es la frecuencia de reloj
  • C es la Capacidad que tienen los transistores de mantener una carga
  • V es el Voltaje

La magia de todo es que si se reduce el tamaño de los transistores no solo la densidad por área crece sino que V y C también lo hacían, a esto se le conocía como Escalado de Dennard porque fue acuñado por Robert H. Dennard, cientifico de IBM que entre otras cosas invento la memoria DRAM.

Pero el escalado de Dennard termino cuando llegamos a los 65nm, el motivo es que existe otra parte de la formula que hasta ese punto era negligible.

Consumo = Q*f*C*V2+(V*Fuga de Corriente).

Las consecuencias de ello fueron que la era en el que se hacían CPUs mono-nucleo a grandes velocidades paso a la historia y se paso a la era de los procesadores multinúcleo la carrera de los Mhz había pasado a mejor vida.

El escalamiento de Dennard utiliza el valor S donde S es el tamaño relativo del nuevo nodo respecto al anterior. Por ejemplo si nuestro nodo es de 100nm y el nuevo es de 70nm entonces el valor de S va a ser 0.7. Pues bien el hecho de que de repente el voltaje no se pudiese escalar cambio la formula por completo:

Q, f y C mantuvieron sus valores de escala pero el voltaje no los mantuvo, en realidad se convirtió en un constante 1 y el nivel de consumo paso a ser S2 . ¿Conclusión? Los transistores dejan de poder ser más rápidos y en consecuencia las velocidades de reloj no pueden aumentar más, hay que buscar otras técnicas.

Pero es que además de todo esto hay un problema adicional llamado «Silicio Opaco u Oscuro» o Dark Silicon en Inglés que…

El Silicio Oscuro es la parte de la circuitería dentro de un circuito integrado que no puede recibir energía a un voltaje de operación normal (el determinado por el chip) para un limite de consumo energético dado. La clave es que la cantidad de Silicio Oscuro de un nodo a otro aumenta en 1/S2 por lo que pese a que podemos poner físicamente el doble de transistores la cantidad útil de estos disminuye de una generación a otra.

Si os fijáis es la fila en la tabla de arriba relativa a la utilización, por si fuera poco este no es el único problema que existe sino el hecho de que a partir de ciertos nodos el coste por transistor no esta escalando de la misma manera que la densidad provocando que el coste por área sea mucho más grande.

¿Que provoca esto? Pues que antes un chip con un tamaño x en un nodo determinado tenía el mismo coste que otro chip del mismo tamaño pero diferente nodo pero a partir de cierto nodo por el mismo área se hace más caro. Para que lo entendáis pese a que el Scarlett Engine de Xbox Series X mide unos 360mm2 como el de la Xbox One original, el hecho de utilizar un nodo de 7nm que tiene un coste por transistor mucho más alto provoca que el chip le sea más caro a Microsoft.

¿Pero que ocurre si quieres escoger un chip a un precio determinado? Pues que el área ira disminuyendo con cada generación. Esa es la diferencia entre Sony y Microsoft en su planteamiento y ya la vimos en Xbox One X y PS4 Pro donde el SoC de la primera mantuvo los 360mm2 de media pero Sony en PS4 Pro paso de los 348mm2 de la PS4 original a los 324mm2 de la PS4 Pro y no me extrañaría que en PS5 el chip fuese más pequeño.

Esta estrategia de mantener el coste de los chips por oblea ha provocado una elección de una GPU con menos Compute Units pese a tener la misma arquitectura que ha forzado a Sony a optar por velocidades de reloj más altas. Aparte que la mayor velocidad de reloj para llegar un consumo estándar aceptable para una consola de videojuegos si subimos la velocidad se ha de poder compensar a través de la otra variable que es Q que es la cantidad de transistores en el chip lo que al reducirlos obviamente reduce el tamaño del chip.

La otra estrategia y que vamos a ver a futuro tiene que ver con la localización de los datos, dependiendo donde se encuentren los datos el consumo energético por una operación es mayor o menor, siendo menor cuanto más cerca están del procesador.

Esto hará que en sistemas futuros la memoria este más cerca del procesador e incluso en composiciones 3DIC con la memoria en vertical con tal de reducir la latencia por operación y reducir el consumo energético.

Es más, muchas de las compañías que diseñan microprocesadores están gastando dinero para diseñar nuevos tipos de memoria DRAM que colocar en modo 3DIC de cara al futuro pero eso ya es otra historia.

Esto es todo, tenéis los comentarios de esta misma entrada para comentar y no olvideis que tenemos Discord.

4.9 9 votes
Article Rating
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Steven

Hola no entiendo en los cpus modernos la cache es para unir los módulos de núcleos o lo hace el bus

[…] El Elefante en la habitación […]