Edge Supercomputing
El pasado día dos de octubre tuvo lugar en Madrid el foro From the Edge to AI Computing: Energy Efficiency and Sustainability, organizado por enerTIC. Una vez más tengo que dar las gracias y la enhorabuena a Óscar, María y todo su equipo por una organización perfecta. Tuve el honor de moderar la última sesión: AI Computing y HPC: liderando la sostenibilidad en la nueva era digital.
Las sesiones fueron francamente interesantes, y tuvieron un denominador común: en todas, de una forma u otra, salió el concepto Edge Computing a la palestra. Si, una vez que muchos usuarios se habían convencido de que debían migrar a la nube, ahora el mensaje es Edge Computing. Es un esquema adecuado, porque permite la flexibilidad de un funcionamiento realmente híbrido, en el que en local se pueden ejecutar las cargas críticas y un balanceo dinámico con infraestructuras de nube pública.
Pero las razones para el Edge Computing no son sólo tener un esquema así. Para introducir el tema de la mesa redonda, hice una pequeña presentación sobre las tendencias en HPC que veo para un futuro próximo: en un extremo están las grandes infraestructuras para computación en la exaescala. Uno de los ponentes en la mesa era David Carrera, del BSC, que explicó cómo será Mare Nostrum 5. España es uno de los tres países que lideran la supercomputación europea, y traer una inversión de más de 200M€ siempre es una bendición.
Pero en el otro extremo está lo que denominé Edge Supercomputing: el concepto Edge Computing aplicado a la supercomputación. Hay que tener en cuenta dos cosas: un servidor de hoy en día con 24 o más núcleos en los procesadores principales y 640 tensor cores de una Tesla V100 tiene una capacidad de cálculo que le ubicarían en la lista top500 hace unos pocos años. Y si es una máquina que tiene una capacidad de cálculo que hace unos pocos años se consideraba la punta de lanza de la supercomputación y resuelve problemas mediante las mismas técnicas de programación paralela, es que resuelve problemas de supercomputación. Si nada, tiene cabeza de pato, pico de pato y hace cuá-cuá, es un pato.
La segunda cuestión a tener en cuenta es lo que denominé la AI storm: la tormenta de inteligencia artificial que nos viene encima. Industria 4.0, AI, Data Analytics, Machine Learning, IoT … no solo se van a generar un volumen de datos enorme, sino que también se van a tener que procesar. El denominador común de todo son dos cosas: AI (podemos englobar las diferentes metodologías utilizadas para Machine Learning, Deep Learning y Data Analytics en general dentro de la AI), y la necesidad de procesar esos datos cerca de su origen.
El problema del procesar cerca del origen de datos es muy importante. Son muchos los casos de uso en el que tanto las latencias como la necesidad de garantizar que los datos se procesen a tiempo hacen que sea una necesidad procesar cerca del origen. Esto no es un concepto nuevo: por ejemplo, en los supermercados la base de datos de productos y precios están en el TPV de la caja. Las cajas de los supermercados tienen que funcionar y cobrar a los clientes pase lo que pase: da igual que falle el servidor, las comunicaciones o lo que sea. Al cliente hay que cobrarle rápido para que se pueda marchar con sus productos.
Supongamos ahora otro caso simple: una cámara en los tornos de entrada de un campo de fútbol, que tiene que analizar varias caras por segundo para decidir si entre ellas hay algún terrorista o alguien violento que tenga vedada la entrada al campo. Un proceso de Deep Learning como ese requiere mucha capacidad de proceso, y hay que hacerlo en tiempo real. En el radiotelescopio SKA, otro proyecto en el que he trabajado, se producirán la friolera de 18TB/seg de datos. Un volumen de datos así tiene que procesarse a pie de antena. Al menos realizar un primer proceso para reducir el volumen de información a transmitir.
Podríamos poner muchísimos ejemplos en Industria 4.0, en el que sea necesario resolver problemas mediante AI y técnicas de supercomputación, y que sea imprescindible hacerlo “sin la comodidad de un CPD”. La solución a esto es el Edge Supercomputing, para lo que van a aparecer en el mercado en los próximos años las infraestructuras adecuadas, tanto en continente como en contenido.
En el continente veremos soluciones muy innovadoras en el que en espacios muy reducidos podremos tener altas capacidades de cálculo unidos a alta densidad. Los pequeños contendores de refrigeración por inmersión o servidores con refrigeración por agua en vez de aire están a la vuelta de la esquina.
En cuanto al contenido, pronto veremos también una generación de procesadores especializados en problemas de AI. Si, a las GPU’s les van a salir competidores. La razón de esto es obvia: la supercomputación no era un mercado lo suficientemente grande para diseñar hardware ad hoc: quien lo hiciera tendría que amortizar sus diseños, lo que haría que los precios de venta fueran muy elevados y muy poco competitivos. Por eso en el último cuarto de siglo hemos basado la supercomputación en servidores estándar: son commodities baratas. Sin embargo, el mercado de videojuegos es enorme, y sí es rentable hacer diseños para él. Lo que más demanda ese mercado es capacidad gráfica y por eso las GPU’s han progresado enormemente.
Ahora va a aparecer otro mercado enorme, el de la AI. AI + IoT están creando un enorme ecosistema de dispositivos, datos y procesamiento. Este mercado si tiene un tamaño lo suficientemente grande para realizar diseños específicos para él, y lo iremos viendo en los próximos años.