Desde que Intel lanzase al mercado el primer procesador, el Intel 4004 hace 40 años, los microprocesadores han cambiado mucho en tamaño, frecuencia de funcionamiento y consumo de potencia. Hoy en día, hablar de un procesador de cuatro núcleos es algo que nos parece muy normal pero, realmente, esta tecnología no lleva tanto tiempo en el mercado puesto que el primer procesador con dos núcleos se lanzó en el año 2006 (el Intel Core Duo) y, a día de hoy, Intel fabrica los Sandy Bridge con seis. Sin embargo, si a nivel comercial se trabaja con 6 núcleos, en los laboratorios de investigación, los ingenieros siguen trabajando en el desarrollo de procesadores mucho más potentes con cada vez más núcleos y, en el caso del MIT, aspiran este año a llegar a un diseño que supere los 100 núcleos.
Para poder alcanzar dicha cota, los investigadores del MIT han desarrollado un entorno de simulación que les permita probar los diseños, evaluar posibles fallos y, lo más importante, medir el consumo de los dispositivos así como los tiempos de respuesta (acceso a memoria, comunicación entre núcleos, etc). El Hornet, que es como se llama este simulador, permitirá realizar labores de testing de los dispositivos sin necesidad de tener que esperar la fabricación de éstos en la fase de prototipado y, por tanto, se enviarán a fabricación diseños mucho más depurados.
Puedes usarlo para poner en marcha una arquitectura y probarla
El Hornet podría usarse como espacio de simulación con diseños de hasta 1.000 núcleos, por tanto, parece que podría tener un ciclo de vida relativamente largo y con continuidad en el tiempo. ¿Simular hasta 1.000 núcleos? Teniendo en cuenta que las simulaciones, en términos generales, necesitan bastante potencia de cálculo, un simulador que puede llegar hasta los 1.000 núcleos requiere una gran capacidad de procesamiento de datos, máxime cuando se realizan simulaciones que abarcan muchos ciclos de reloj y se requieren los resultados exactos de cada ciclo de computación durante la ejecución de un programa y, precisamente, una de las grandes ventajas del Hornet es la precisión con la que es capaz de medir los resultados.
Por ahora, el equipo del MIT ha sido capaz de elaborar un diseño de 64 núcleos que ha sido probado con éxito en el Hornet a todo nivel de detalle e, incluso, se han atrevido a probar diseños mucho más complejos pero con análisis algo menos exhaustivos.
Si diseñásemos sistemas de 1.000 núcleos necesitaríamos más computadoras para poder ponerlas en paralelo
Cuando más sube el número de núcleos mayor es la capacidad de computación necesaria. Para hacernos una idea, en un diseño de 256 núcleos, una simulación requeriría para cada núcleo (que es equivalente a un hilo en la aplicación) alrededor de un millón de instrucciones por ciclo y, por tanto, 256 millones de instrucciones por ciclo de reloj, un número muy alto que requiere de grandes infraestructuras de procesamiento en paralelo.
Gracias al Hornet, los investigadores del MIT tienen algo más cerca alcanzar el objetivo de un procesador con más de 100 núcleos, desde luego que el diseño debe ser espectacular.