Intel prepara su procesador… ¡con 80 núcleos!

por El equipo de The Inquirer: Lunes 12 Febrero 2007, 10:20

El roadmap para los procesadores de alta gama está más que nunca dominado por las interconexiones y la capacidad que éstas tienen de dar entrada y salida a todo tipo de datos en estos procesadores.

 

Si a eso unimos la tendencia a producir micros destinados a tareas muy específicas nos encontramos con un nuevo paradigma de fabricación de microprocesadores. Y este paradigma se demuestra en el nuevo chip de Intel, denominado Polaris.

Polaris es el nombre de la CPU con 80 cores que Intel mostró en demostración en el último IDF para la llamada ‘TeraFLOP Computing’. Para ponernos en perspectiva, un artículo de la ACM estimó que en 1988 se podría hacer con 100 megavatios, pero procesadores como el 68882 podrían reducir ese consumo en gran medida. Teorizaron sobre el tema y afirmaron que con 5 megavatios podría ser suficiente si la refrigeración era adecuada y se aplicaban algunos avances tecnológicos.

El primero de estos supercomputadores que se construyó fue el ASCI Red, en el Sandia National Lab. Disponía de 104 armarios que encerraban 10.000 Pentium Pros y que ocupaba una superficie de 230 metros cuadrados. Consumían ‘tan solo’ 500 Kvatios, un avance singular. Diez años más tarde, Polaris ofrece estas prestaciones en tan solo 275 milímetros cuadrados y consumiendo 62W.

Como podéis observar, Polaris está hecho de pequeñas baldosas idénticas, en concreto 80 de ellas en una matriz de 8×10. Cada una de estas partes no es hace demasiadas cosas, ya que este es un chip de pruebas, no una CPU de propósito general. El núcleo dispone de dos procesadores de coma flotante, cachés de datos e instrucciones y un pequeño router. Precisamente este último componente es el pilar sobre el que se asienta la red de interconexión.

Cuando dispones de un micro capaz de superar el TeraFLOP, es necesario garantizar que se le pueden suministrar los datos para que trabaje a plena potencia. Este router es una unidad con 6 puertos que ofrece un ancho de banda de 80 Gbytes con una latencia de 1,25 ns. Si observamos que existen 80 de estas unidades, nos daremos cuenta de que hay un trasiego de información importante, y ese es el punto fuerte de Polaris. Con una frecuencia de trabajo de 3,16 GHz, el ancho de banda que ofrece este chip es de 1,62 Tbps. El router es capaz de enviar datos a sus vecinos en cada una de las cuatro direcciones necesarias, así como a la memoria integrada de la que Intel no ha dado detalles. El último de los enlaces va al propio núcleo.

El algoritmo de enrutado no es especialmente complicado, y se trata de una configuración de agujero de gusano. Se establecen caminos entre los routers, se envían los datos, y se cierra el enlace, que actúa como un canal virtual. La simplicidad es una de las claves que permiten disponer de una latencia realmente baja.

El principal objetivo de Polaris es ese, enrutar los datos correctamente, pero hay otro tipo de cosas que se prueban aquí: el ahorro de energía y la escalabilidad (en número de núcleos) del procesador. Los ahorros de energía no son nada nuevo, pero si tienes un router en el núcleo que necesita tener una baja latencia, la cosa se vuelve complicadilla. En los modos de inactividad, estos procesadores de coma flotante pueden ahorrar el 90% de sus picos de consumo, la memoria puede reducirlo al 50% pero los routers solo pueden reducir el consumo un 10%, ya que la latencia no se lleva bien con los modos de inactividad.

Eso nos lleva al futuro, y a preguntarnos por qué debería preocuparnos que cierto procesador pueda ser capaz de ofrecer un número arbitrario de cálculos por segundo. Y la respuesta tiene dos partes, que son en las que se centrará Intel en sus procesadores multicore, pero habrá un tercer aspecto en este segmento tan pronto como comiencen a hablar de la memoria integrada.

La primera parte de la respuesta responde a la idea de núcleos asimétricos. Si dispones de una red que es capaz de trasladar datos de un lado a otro sin problemas, no es necesario tener lo mismo en todos los nodos. Esos nodos serán independientes de la funcionalidad de entrada salida, así que si dispones de un interfaz adecuado y de unos protocolos correctos, es posible colocar lo que necesites en cada ‘baldosita’.

En estos momentos hay dos unidades FP, un par de módulos de memoria y la circuitería de control. Si cambiamos eso con un procesador completo x86 comenzaremos a poder vislumbrar las posibilidades. Si cambiamos la mitad de esas celdas con micros x86, un cuarto con GPUs, algún que otro procesador de física y un poco de aquí y de allá la cosa se vuelve interesante de verdad.

Con una base de interconexión y un conjunto de celdas, es posible construir CPUs diseñadas específicamente para lo que quieras. También podrías utilizar la misma arquitectura para disponer de 5, 20 o 100 celdas con Celerons, Intel Core 2 o incluso Xeon, así que todo se volverá fácil a la hora de diseñar, fabricar y personalizar.

La otra parte de la respuesta es la que toca la parte de la red de interconexión. La informática ha migrado de los buses de interconexión compartidos a enlaces punto a punto como los utilizados en HT. Tanto integrados como fuera de la die, encontramos switches e interconexiones cruzadas para poder dar entrada y salida a los datos. Estos dispositivos no escalan demasiado bien, ni tampoco lo hacen los buses con topología de anillo cuando hablamos de cientos de núcleos en lugar de tan solo unos pocos.

Y ahí entran en juego estas redes de interconexión: permitirán dar el salto de decenas a cientos o incluso miles de núcleos. Polaris es flexibilidad, y también capacidad de expansión. Y obviamente, también es una señal clara del objetivo al que se dirige Intel para finales de esta década… y más allá.

En realidad, cuando hablamos de Polaris no estamos tratando con un súperprocesador a nivel funcional. Es posible que llegue a tasas de teraFLOP, pero eso no es de tanta utilidad en el mundo real. Si damos tiempo para una próxima generación de Polaris, nos encontraremos con unidades mucho más funcionales, a las que seguirán desarrollos que podrás personalizar a medida. µ

(1) Frey, A. H. and Fox G. C. "Problems and Approaches for a Teraflop Processor", Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues – Volume 1, 1988

Traducción de una noticia original de Charlie Demerjian del 12 de febrero de 2007.

vINQulos
Noticia original

Anuncios
Esta entrada fue publicada en Sin categoría. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s