Posts etiquetados con ‘eficiencia energética’

Asalto chino a la supercomputación: 2ª parte

Lo de que “segundas partes nunca fueron buenas” seguro que a más de uno le suena. Pero a la comunidad de las altas prestaciones en China le está encantando. Sunway TaihuLight es el supercomputador más potente del mundo en la cada vez más polémica métrica LINPACK. Con 93 petaFLOPS, triplica el rendimiento del que queda en segundo puesto, el también chino Tianhe-2, que equipaba procesadores Intel. La gran novedad, además del asalto al puesto 1 de un nuevo sistema, es que Sunway TaihuLight es 100% de fabricación china, ni Intel, ni IBM, ni NVIDIA, ni AMD,…

Justo un post más abajo comentábamos hace casi un año que China revolucionaba el ranking de la supercomputación copando el primer puesto durante 3 años completos desde su entrada en el Top#1. Hablábamos de que las instalaciones chinas se habían triplicado en poco tiempo. Pero lo que nadie había advertido con antelación es que en Junio 2016, no sólo el Top#1 seguiría siendo de una instalación china, sino que su fabricación sería completamente china (algo insólito) y que dejaría en segundo lugar, y por mucho, al que había sido dueño del pódium durante 3 años, Tianhe-2. Y no solo en rendimiento, que alguien podría pensar que “sólo” hay que meter más procesadores, sino que también es energéticamente más eficiente, ¡el doble!

Sunway TaihuLight posee más de 10 millones de núcleos de procesamiento (casi igual que la máquina desde donde nos lees, ¿verdad?) y consume algo más de 15 millones de vatios (si pensamos en un equipo de sobremesa de 200 vatios serían como 75.000 ordenadores). Esto le hace ser el tercer sistema en la lista de los Green500, es decir, los más ecológicos, y sin duda el 1º de las mayores instalaciones con un ratio de más de 6000 MFLOPS por vatio consumido (6 billones de operaciones en coma flotante por segundo y vatio consumido). Todos los detalles del sistema vienen descritos en el documento hecho público por el investigador de la Universidad de Tennessee, Jack Dongarra. Los medios han tomado buena nota de ello desde que se conoció el ranking el pasado Junio, y hace poco incluso en medios generalistas de la prensa española.

El Departamento de Energía (DoE) estadounidense tiene proyectados desde hace más de un año la creación de 2 supercomputadores con 5-10 veces más potencia que Tianhe-2, y que estarían en funcionamiento en 2017, pero que ya no parecerían sacar tanta ventaja al Top#1 de origen chino. Por nuestra parte, España mantiene en lista una única instalación, el Mare Nostrum, en el puesto #106 y perdiendo ya al Teide HPC que estuvo en el #373 en noviembre de 2015. Si tienes más curiosidad aquí tienes toda la lista del pasado junio: https://www.top500.org/lists/2016/06/

Etiquetas: , , ,
Categorias: General

Semana Grande de la Supercomputación: Top500 y premios NVIDIA a centros educativos y de investigación

Adelantábamos en el último post de las previsiones de supercomputación que Noviembre tenía una de las fiestas bianuales de la supercomputación, la del Top500. Así ha sido, pero aún hay más: se han anunciado los nuevos NVIDIA CUDA Teaching/Research Centers con 3 incorporaciones nacionales, la Universidad de Valladolid, la Universidad de Sevilla y la Universidad Rey Juan Carlos.

Celebrándose la Supercomputing Conference 2014 en Nueva Orleans, EEUU, se anunció el pasado martes el ranking de noviembre del Top500. Por cuarta vez consecutiva, Tianhe-2 mantuvo el liderazgo (2 años completos, con las 4 actualizaciones correspondientes de las que hemos dado cuenta por estas líneas). Estados Unidos bajó en 2 instalaciones de su lista en el Top500 (llegando a 231 instalaciones y siendo líder en número de supercomputadores del ranking, casi la mitad de todos) y las europeas subieron en 14 hasta 130. A finales de la semana pasada se anunciaba a bombo y platillo la ayuda económica que NVIDIA e IBM recibirían para hacer posible en el plazo de 3 años dos supercomputadores de entre 2-10 veces más potente que el actual #1. Para ello, se valdrían de procesadores PowerPC9 y aceleradores NVIDIA Tesla k80 de futura generación, basados en la familia Volta, nombre dedicado al físico italiano Alessandro Volta, inventor de la batería, por la extremada eficiencia energética de dicha familia. IBM ya tiene grandísima experiencia en el diseño de estos supercomputadores, no tanto NVIDIA a pesar de que su tecnología CUDA esté presente en 2 de las 10 instalaciones más potentes del citado ranking.

NVIDIA también anunció sus nuevos CUDA Teaching Centers (CTC) y CUDA Research Centers (CRC), galardones a los centros que mantienen en sus planes docentes o investigaciones multidisciplinares materia ligada con la tecnología NVIDIA CUDA. Nos complace anunciar que entre sus nuevos CTCs  tenemos a la Universidad de Valladolid y a la madrileña Universidad Rey Juan Carlos (la que acoge nuestro día a día), por nuestro afán de atraer nueva tecnología a las aulas de las titulaciones de la Escuela Técnica Superior de Ingeniería Informática. Así, Madrid tiene 3 centros (UAM, UPM y URJC) de los 10 de toda España. Este galardón conlleva una donación de material de última generación para su uso en las clases y talleres de las titulaciones que así lo requieran o seminarios a la comunidad científica del centro, cuyos investigadores implicados se comprometen a impartir. También es importante citar la entrada de la Universidad de Sevilla como CRC haciendo 6 centros españoles.

NVIDIA CUDA es una tecnología de cómputo paralelo que aprovecha la gran potencia de cálculo de las tarjetas gráficas (en realidad de su procesador, GPU, de unidad de procesamiento gráfico) para acelerar la ejecución de aplicaciones científicas. Surge como forma de simplificar la programación de estos procesadores especiales, al igual que existen lenguajes de programación (C, Pascal, Fortran, Java,…) para los tradicionales procesadores centrales (CPUs, de unidades de procesamiento centrales), en los que siempre se han ejecutado las aplicaciones. En determinados casos, en los que la gran independencia de los datos a procesar y la cantidad de ellos son enormes, la potencia de las GPUs puede superar con creces a la de la CPU, además de ser energéticamente más eficientes por estrategias de diseño. NVIDIA CUDA surgió en 2007 gracias al increíble éxito que tuvieron los primeros programas que, haciendo uso de la potencia del procesador gráfico, mejoraban el rendimiento y se volvían más rápidos. Algunas de las nociones para entender este éxito lo pusimos por este blog hace unos años. Actualmente, esta tecnología está soportada por toda la gama de procesadores gráficos de NVIDIA, desde sus tarjetas gráficas más domésticas de apenas unas decenas de euros, hasta sus aceleradores de supercomputación más potentes de varios miles.

 

Etiquetas: , , , , , , , ,

“La caída de los titanes”

Que la tecnología va más rápido que su uso es un hecho casi indiscutible, apenas hemos entendido un dispositivo cuando toca renovarlo. En el campo de la supercomputación también ocurre, y ejemplos recientes de ello hemos tenido en los últimos años. Hoy tratamos un ejemplo en el post de “la caída de los titanes”, recordando la famosa obra de Cornelis van Haarlem, el supercomputador de moda en el Top500, Titan, del que hablamos el pasado octubre, y el último procesador gráfico de NVIDIA, el Geforce GTX Titan, basado en la tecnología Kepler con importantes mejoras para la supercomputación de consumo (o no tan de consumo).

El procesador Cell se desarrolló gracias a la alianza denominada STI de Sony, Toshiba e IBM y sus primeros demostradores datan del año 2001. IBM diseñaba el procesador, Toshiba fabricaba y ofrecía un campo de aplicación en electrodomésticos (como su CellTV de 2010) y Sony garantizaba el desarrollo de aplicaciones, videojuegos y demás expectativas para su Playstation 3, que se lanzó en 2006, y que fue el producto comercial estrella del Cell Processor. El procesador Cell tuvo un arranque muy importante, algunas empresas, como Mercury Computer Systems, basaban sus productos en dicho procesador para campos muy productivos como la imagen médica, inspección industrial, tecnología aerospacial o la supercomputación, pero todo esto tocó techo mediático. El procesador era muy complejo de programar y de sacar partido, y este hecho retrasó en gran medida los grandes lanzamientos para la videoconsola de Sony. En 2007 Sony abandonaba el barco, vendiendo participaciones a Toshiba, que posteriormente recuperaría. Sin embargo, la inminente Playstation 4 parece que estará basada en la arquitectura x86 más tradicional (en este caso de la mano de AMD), la forma en la que otras videoconsolas, como Xbox360, ganaba la carrera en los lanzamientos de novedades.

A la par, el supercomputador Roadrunner fue el #1 del ranking mundial Top500 en Junio de 2008 y hasta noviembre de 2009. Estaba basado precisamente en la tecnología Cell, e incluso en la actualidad se mantenía en la lista del Top500 en una destacada posición (#22), pero sus últimas noticias son que se desmontará. Cayó un titán.

Otros grandes anuncios también tuvieron sus fracasos, como el proyecto Larrabee de Intel (del que hablamos en diciembre de 2009) pero que pudieron reconvertirlo a coprocesador de altas prestaciones en el Intel Xeon Phi que citamos hace escasos meses.Veremos con el tiempo qué pasa, y si mantiene buenos puestos en el escaparate del Top500 como para convencer en otras áreas.

PD: Por cierto, del Cell TV de Toshiba nunca más se supo en occidente.

Enlaces sobre la noticia:

Ranking Top500: www.top500.org

Etiquetas: , , , , , , ,
Categorias: General, Hardware

El Jaguar se transforma en Titan

Jaguar, el supercomputador de Oak Ridge National Laboratory que en noviembre de 2009 fue líder mundial del ranking Top500 y que quedó relegado a sexta posición el pasado junio, se reconvierte para luchar por la posición de cabeza a mediados del mes que viene con el nombre de Titan. Jaguar permaneció líder del ranking durante dos convocatorias, noviembre 2009 y junio 2010 (el Top500 es un ranking semestral), pero cedió su puesto en noviembre 2010 a la supremacía china con su Tianhe-1A y de la que dimos buena cuenta por estas línea.

En 2008 Jaguar contenía del orden de 150.000 núcleos de procesamiento y llegó a la segunda posición del ranking. En 2009 ya sufrió un upgrade para escalar a la primera posición, montando una arquitectura Cray XT5 formada por 18688 nodos de 2 CPUs AMD Opteron, cada una de las cuales contaba con 6 cores, y haciendo un total de 224256 núcleos de procesamiento para ofrecer casi 2 Petaflops (2×10^15 operaciones en coma flotante por segundo). La nueva mejora a Titan supone la migración a la arquitectura más reciente Cray XK5 obteniendo un factor x10 en capacidad computacional y llegando a los 20 Petaflops. En una primera fase se sustituían las CPUs de 6 núcleos por unas de 16, pasando a 299008 núcleos de procesamiento. Posteriormente, se incluyeron racks de procesadores gráficos NVIDIA Tesla M2090 de la familia Fermi que terminarán evolucionando a Tesla K20 de la familia Kepler, la más moderna de NVIDIA y que aquí ya presentamos.

La inclusión de procesadores gráficos (GPUs) en los supercomputadores para mejorar las cotas de procesamiento no es nueva, el citado Tiahne-1A ya presumía de ello con sus Tesla M2050 de la familia Fermi en 2011. Por su parte el anterior IBM Roadrunner, líder del ranking de junio de 2008 a noviembre de 2009 (3 convocatorias), incluía una arquitectura basada en procesadores Cell, más conocidos por ser el motor de la videoconsola Sony Playstation3. Sin embargo, la renovada imagen de Jaguar para conseguir el liderato con la inclusión de mayor número de procesadores gráficos ha sido tan espectacular (18688 GPUs, una por nodo, haciendo una arquitectura absolutamente híbrida) que la noticia ya ha aparecido en diferentes medios de información generalista (CNN, BBC, National Geographic). Cabe destacar que esta renovación no se diseña de un día para otro, y que ya estaba prevista desde mediados del año pasado.

Teniendo en cuenta que el consumo energético de Jaguar fue de 7 millones de dólares en 2011 (alrededor de 7MW de consumo), un aspecto quizá más importante que la mejora computacional del x10 que supone Titan respecto a su predecesor, es su eficiencia energética, pues sus procesadores así como las arquitecturas gráficas son más eficientes y ocupando el mismo espacio, así como mejorando un factor x10 su capacidad computacional, no requerirá mucho mayor consumo energético (alrededor de 9 MW). La arquitectura CrayXK5 dará paso en un futuro próximo a una nueva generación XK6 y está previsto que en 2016 Titan vuelva a mejorarse para conseguir otro factor 10 llegando a los 200 Petaflops, camino constante hacia la “Computación Exascala” (de la que ya hablamos en Junio 2011).

Este supercomputador será utilizado de manera abierta por la comunidad científica, para predecir el clima a través de complejos modelos, estudiar nuevos materiales y combustibles, simular procesos nucleares y, en definitiva, buscar nuevas aplicaciones y fuentes de energía para la humanidad.

 

Enlaces de interés sobre la noticia:

Titan: http://www.olcf.ornl.gov/titan/

Top500: http://www.top500.org

Cray: http://www.cray.com

NVIDIA Kepler: http://www.nvidia.com/object/nvidia-kepler.html

Grupo de investigación CAPO: http://www.gavab.es/capo

Etiquetas: , , , , , , , ,
Categorias: General, Hardware

Multicores, ¿por qué?

Hace 20 o 25 años era fácil elegir un ordenador y saber de manera aproximada cómo se iba a comportar tan sólo leyendo el nombre del procesador. Podíamos leer 286, 386, 486 (en el generalista mundo de Intel), y para mayor información solía ir acompañado de unos valores mágicos, 20 MHz, 33 MHz, 40 MHz, etc., que nos daban idea de la frecuencia a la que harían las operaciones necesarias para hacer funcionar las aplicaciones. Es decir, que una vez asumida una familia de procesadores, el valor que lo acompañaba nos indicaba de alguna manera la velocidad del ordenador. Ya en los 90 aparecieron los modelos Intel Pentium y ahí la cosa también parecía fácil, con versiones estándar, versión Pentium II, Pentium III, Pentium 4, que a su vez llevaban cada vez más elevados números mágicos de 266 MHz, 700 MHz, 1.2 GHz.

Pero en la pasada década algo debió ocurrir, porque alrededor de 2005, llegados a las últimas versiones de los Pentium 4, con frecuencias de reloj de 3.0 GHz a 3.6 GHz en los más extremos, todo se hizo más complejo para el que quería comprarse un ordenador de sobremesa.

Y entonces aparecieron los multicores

Los fabricantes empezaron a utilizar valores menores en las frecuencias de reloj, y de un 3.2GHz se pasaba a rondar los 1.8-2.8 GHz. La sencilla nomenclatura de las familias anteriores empezaron poco a poco a complicarse con los Intel Core Duo, Core 2 Duo, Core 2 Quad, Core i7, Core i5, i3 y en ninguno (o salvo casos muy excepcionales) no se ven acompañados por aumentos en frecuencias de reloj. La razón ya la hemos comentado en este blog de vez en cuando, y tiene que ver con los aumentos de potencia y problemas de disipación de calor que tendrían estos equipos al disminuir los procesos de integración y aumentar las frecuencias de reloj.

Como dato orientativo, aumentar un 1% la frecuencia de reloj implica aumentar alrededor de un 3% el consumo energético (y por tanto el calor) y tan solo produce aproximadamente un 0.66% de mejora en rendimiento. Así, aumentar un 15% la frecuencia de reloj, implicaría aumentar un 45% el consumo energético y solo mejorar un 9% el rendimiento. Continuar con esta línea haría insostenible el consumo energético de grandes equipos así como las necesidades de refrigeración de los mismos. No, no es el camino. ¿Qué pasa si disminuimos la frecuencia de reloj una vez que alcanzamos un tope? Pues a la inversa. Si bajamos un 15% la frecuencia de reloj (por ejemplo de 3 GHz a 2.5 GHz) reducimos consecuentemente un 45% el consumo energético (aproximadamente la mitad) y nos quedamos al 90% de rendimiento. Eso de disminuir el rendimiento no es lo que buscábamos, pero ¿qué pasa ahora si duplicamos el número de procesadores? Bueno, entonces la cosa cambia porque pasamos a tener un sistema que aproximadamente consume lo mismo (2 procesadores que consumían aproximadamente la mitad) y sin embargo obtenemos un incremento del 180%, es decir, casi el doble de rendimiento.

Por tanto, y como hemos incidido en más de una ocasión, se acabaron los procesadores mononúcleos, o de un único núcleo de procesamiento, se acabaron los aumentos infinitos en las frecuencias de reloj, excesivo consumo y calor, y recibimos con los brazos abiertos las tecnologías multicore y manycore.

Como Mourinho puede seguir preguntando con su característico “¿por qué?”, seguro que mucho mejor que nosotros lo explica el siguiente vídeo de escasos 9 minutos de Intel.

Imagen de previsualización de YouTube
Etiquetas: , ,
Categorias: General

Cinco años desde la aparición de los ordenadores “multicore”

En 2010 se hacen cinco años desde que se lanzaron al mercado los primeros sistemas de varios núcleos de procesamiento. Básicamente todo programa sobre una plataforma de consumo anterior se ejecutaba a una cierta velocidad debido a la frecuencia de reloj a la que se sometía el procesador. Todos hemos sido testigos de los aumentos en las prestaciones de los equipos, desde 1 MHz, 16 MHz, 20 MHz (¿os acordáis del botón turbo?), 33 MHz, 233MHz, 900MHZ, 1.2GHz, 2.0GHz, 2.4GHz, 3.0GHz, 3.2 GHz, 3.6GHz y muchos otros valores intermedios. Un mismo programa mejoraba sus prestaciones y su ejecución era más rápida, el videojuego era más interactivo o la gráfica se calculaba más rápidamente. En 2005 se empezaron a lanzar procesadores de consumo que incluían 2 núcleos de cómputo. Compartían ciertos recursos hardware pero de manera eficiente se podían ejecutar 2 programas simultánemente sin compartir tiempo de procesador, o que un mismo programa se ejecutara desde 2 núcleos de procesamiento. La pregunta ahora sería, ¿ha cambiado mucho desde entonces?

compaq386sx25

Quizá la respuesta sea que no demasiado, no hemos sido testigos de grandes mejoras en el rendimiento de una misma aplicación porque ha habido dos barreras importantes. Una es que a mayor número de núcleos, resultaba más eficiente mantener la frecuencia de reloj por debajo de sus máximos históricos, y la segunda es que los programas no estaban preparados para ejecutarse desde dos núcleos de procesamiento relativamente independientes. Lo que sí que hemos podido percibir es que pudiéramos ejecutar más aplicaciones sobre un mismo equipo. Inicialmente, los primeros multinúcleos o multicores estaban basados en dos unidades de procesamiento y poco a poco se reemplazará toda la base instalada para alojar dual cores , quad cores, hexa cores, etc. Será entonces cuando la mentalidad de todo desarrollador se vea modificada, y necesariamente los programas se desarrollen para trabajar con los varios núcleos de cómputo de la plataforma estándar.

Las herramientas de consumo para el desarrollo de software están incluyendo progresivamente soporte para la programación paralela, el cambio está a la vuelta de la esquina. Dejamos al lector un enlace interesante que habla de esto mismo: http://www.drdobbs.com/go-parallel/blog/archives/2010/03/think_parallel_1.html

Etiquetas: , , ,
Categorias: General