En los medios aparecen periódicamente noticias sobre una «nueva guerra frÃa»: disponer del superordenador más potente con el que aventajar a otros paÃses «rivales».
El común de los mortales está familiarizado con los frutos del paralelismo a pequeña escala: tanto móviles como portátiles tienen hoy por hoy varios núcleos.
Algunos tenemos la suerte de estar familiarizados con el siguiente escalón: HPC o «computación de alto rendimiento»
En el siguiente escalón las cifras son mareantes, y para sacarles algún partido a esos recursos hay que contar con programas que estén realmente pensados para esa escala. Con lo cual, si bien muchos hacen cálculos usando una fracción de superordenadores como el Mare Nostrum de Barcelona, pocos son los que de verdad son capaces de sacarle el jugo a un superordenador en su totalidad.
Jack Dongarra (ahora en el KAUST de Arabia SaudÃ) tiene varias presentaciones sobre HPC. En El futuro de HPC: como plantearse la computación a escala peta y exa vemos cómo compara la potencia de cálculo de los dispositivos que hemos ido mencionando: iPhone 4S, 1 GFLOPs; portátil, 70 GFLOPs; supercomputador «tÃpico», 50TFLOPs (1 TFLOP = 1000 GFLOPs)
Como en cualquier cosa susceptible de competencia, también hay clasificaciones de superordenadores. La más conocida es el «Top 500«, basada en las pruebas Linpack. Consiste básicamente en resolver sistemas de ecuaciones lineales «densos». Desde que se comenzó a usar en 1993 las cosas han cambiado un poco, y otras pruebas alternativas cobran cada vez más importancia: Graph500 (varias técnicas de análisis, o «kernels», aplicados a un único grafo con pesos no dirigido), HPCG (diversas operaciones como multiplicación de una matriz dispersa por un vector), o Green500 (mayor eficiencia energética, a partir de los resultados del Top 500).
Los supercomputadores más famosos han estado en el número 1 del ranking del Top 500: TianHe2 (China), Kei (Japón), Bluegene (EEUU)… En la última clásificación (Junio 2015), el «top 10» lo copa Estados Unidos con Titan, Sequoia, Mira, Stampede y Vulcan (juntos, 54 PFLOPs y 34MW). Le siguen China (TianHe2, 34 PFLOPs / 17 MW), Japón (Kei, 10 PFLOPs / 13 MW), Suiza (Piz Daint, 6 PFLOPS / 2 MW), Arabia Saudà (Shaheen II, 5 PFLOPs / 3 MW) y Alemania (JUQUEEN II, 5 PFLOPs / 2MW).
La mayorÃa usan procesadores de PC, Intel o AMD. ARM se está constituyendo en una alternativa cada vez más interesante, sobre todo por su reducido consumo eléctrico y bajo precio. Ya existen prototipos en esta lÃnea, como el MontBlanc.
Un proyecto interesante es el Flagship 2020 (o «Post-Kei») que ha promovido el gobierno de Japón: disponer de un superordenador de 100 PFLOPs, en una sala de menos de 1000 metros cuadrados, con un consumo menor de 30 megawatios (MW). Todo ello por unos 700 millones de euros. El esfuerzo también se dedicará a optimizar las aplicaciones para que aprovechen este «Exascale computing».
Los otros «top 10» ofrecen listas diferentes:
- Graph 500: Kei (39000 GTEPs), Sequoia (24000), Mira (15000), JUQUEEN (6000), Fermi (3000), TianHe2 (2000), Turing, Dirac y Zumbrota.
- HPCG: TianHe2 (600 GFLOPs), Kei (400 GFLOPs), Titan (300 GFLOPs), Mira (100), Piz Daint (100), Supermuc (100)
- Green500: Shoubu (Japón, 7 GFLOPs/W), Suiren Blue y Suiren (7 GFLOPs/W), Tsubame KFS (4 GFLOPs/W), XStream (4 GFLOPs/W), Storm1 (4), Wilkes (4), Taurus (4), iDataPlex (4)
Otra comparativa interesante serÃa TFLOPs por euro. Un superordenador con potencia de 1 petaflop por segundo (PFLOP) que cueste 12 millones de euros ofrecerÃa unos 80 MFLOPs por euro. Un iPhone 4 ofrece 1 GFLOP por 500 euros, 2 MFLOPs por euro }:-)
O tambień, facilidad de uso por TFLOP. A pesar de tener la fama de ser el más potente, el TianHe2 también tiene fama de ser terriblemente complejo de usar.
Y es que la potencia de cálculo no lo es todo. Hace falta un entorno de desarrollo y pruebas amigable y eficaz, herramientas para optimizar el código en la arquitectura del superordenador, un sistema de almacenamiento capaz de soportar el torrente de datos con agilidad (por ejemplo, el NIH genera unos 20 petabytes al año de información médica…). Un ejemplo serÃan OpenMP (API de programación paralela).
De hecho, los cuellos de botella actuales son precisamente el almacenamiento y acceso a los datos, y la memoria.
Durante un tiempo costó superar la barrera de los 10 PFLOPs, debido a que Infiniband no daba más de sÃ. De ahà que ahora los superordenadores recurran a interconexiones propietarias como Tofu.
Sobre interconexiones, el futuro ya está aquÃ: comunicación fotónica («sillicon photonics»), aplicable desde inter-núcleo hasta larga distancia (WAN). Además de permitir un mayor ancho de banda y menor latencia, reducen el consumo energético.
En cuanto a memoria, ya hay arquitecturas de RAM 3D como Hybrid Memory Cube (HMC) que ofrecen anchos de banda de 480 GB/s. Una memoria DDR3 «tÃpica» ofrece 20 GB/s…
Otro tema que está de moda es la computación cuántica. Tal y como se presenta, se antoja la solución de todos los males. Pero la realidad apunta a que más bien desempeñará un papel complementario (similar a por ejemplo las GPU)
Conferencias interesantes sobre estos temas son: