Los diseñadores o arquitectos del hardware se tienen que enfrentar a una serie de limitaciones fijas para sacar el máximo rendimiento en los nuevos diseños. Una de estas limitaciones es el silicio oscuro, el cual hace que CPUs y GPUs ya no escalen como antes. Os explicamos en qué consiste este fenómeno y porque se da en los procesadores a día de hoy.
Uno de los problemas a la hora de escalar un procesador tiene que ver con el consumo energético de este y hay veces en las que es necesario dejar partes del mismo totalmente inactivas. Algo que tiene que ver con el silicio oscuro y en especial a la hora de hacer CPUs y GPUs más complejas en cuanto al número de núcleos.
¿Qué es el Silicio Oscuro?
El término Dark Silicon hace referencia a las partes del procesador que tienen que ser apagadas en un momento dado para que otras puedan funcionar sin problemas, este fenómeno es uno de los quebraderos de cabeza de cara al diseño de nuevas CPUs y GPUs. Es un fenómeno cuanto menos «reciente», ya que hace unos años no existía y por tanto podíamos tener el 100% del área de un procesador activa todo el tiempo.
La Ley de Moore escalaba en paralelo al escalado de Dennard, el cual se basaba en que a medida que los transistores se hacían más pequeños, la densidad de consumo por unidad de superficie se mantenía constante entre nodo y nodo. Lo que en lenguaje llano se traduce de la siguiente manera: a medida que un transistor se hace más pequeño, su consumo se reduce de manera proporcional a la reducción en tamaño.
Con el escalado de Dennard ya roto desde hace quince años, los arquitectos se están encontrando con problemas para mantener una densidad de consumo que vaya acorde con la reducción de tamaño de los transistores, siendo una de las soluciones el llamado Dark Silicon o silicio oscuro. El cual se basa en dejar partes inactivas en el procesador y por tanto no reciben energía externa para funcionar. Esto lleva a que CPUs y GPUs no escalen de la misma manera que antes. Dado que hay que agregar mecanismos de encendido y apagado en las diferentes partes que lo componen.
¿Cómo afecta al diseño de nuevos procesadores?
Si miramos en el interior de cualquier procesador veremos que estos se componen de diferentes bloques, por lo que un truco muy común en el diseño es dividir el área del procesador en áreas distintas donde cada una de ellas recibe un pulso de energía distinto, de esta manera se hace posible poder desconectar partes enteras del procesador cuando no están en uso y repartir de manera más eficiente la energía.
El problema del silicio oscuro es que a medida que vamos haciendo procesadores más complejos en cuanto al número de núcleos tenemos que ir añadiendo más y más funciones para apagar esas partes del procesador en un momento dado. Muchas veces el Dark Silicon no son unidades enteras, sino que por ejemplo puede ser que haya instrucciones que hagan uso de partes del procesador distintas de otras y estas se vayan activando y desactivando según cuál sea la instrucción que se esté ejecutando.
Pero, lo que especialmente afecta en la densidad dedicada al silicio oscuro. Es que a medida que aumentamos el número de núcleos más área acaba ocupando el silicio oscuro de un procesador en total. Esta es por tanto la principal limitación a la hora de escalar tanto CPUs como GPUs en cuanto al número de núcleos.