Posts etiquetados con ‘CUDA’

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: , , , , , , , ,

Kepler: una evolución de los procesadores gráficos de NVIDIA

La semana pasada estuvimos en la conferencia de presentación de novedades de la marca de procesadores gráficos NVIDIA. La GPU Technology Conference (GTC) de 2012 ha presentado ante casi 3000 asistentes las novedades tecnológicas de esta reputada marca de chips gráficos que se está ganando un puesto en el área de la supercomputación (de consumo, o no).

De forma resumida, los orígenes de las GPUs (Graphics Processing Units, unidades de procesamiento gráfico, en contraposición de las CPUs/unidades de procesamiento central) se pueden centrar a primeros de los 90 para reducir el coste computacional del renderizado gráfico, especialmente en aplicaciones 3D en las que la escena 2D proyectada en pantalla viene determinada por muchos cálculos de proyección. Los videojuegos han sido el motor básico de las evoluciones que han tenido lugar en estos componentes, y donde su especial característica arquitectónica ha sido el paralelismo intrínseco que ofrecen debido a la propia naturaleza de los problemas que abordan (renderizado). Este paralelismo “innato” colocó a la arquitectura gráfica en un lugar privilegiado a finales de los 90 y primeros de la pasada década para que investigadores de todo el mundo generaran un movimiento que inicialmente se denominó GPGPU o computación de propósito general utilizando GPUs (General Purpose computation using GPUs). Y es que el poder de cómputo que podían ofrecer estos chips gráficos a problemas computacionales de todo tipo resultaba muy atractivo para los investigadores (muy comentado en este blog por cierto, ver entradas que tocan este tema más abajo). Desde el año 2002 hasta el año 2005 surgieron muchas aproximaciones para tratar estos problemas desde un punto de vista gráfico y en 2006 NVIDIA lanzó un interfaz HW/SW denominado CUDA (de Compute Unified Device Arquitecture, y por cierto, término que ahora reniega la propia NVIDIA) y el campo GPGPU pasó a denominarse GPU Computing (computación en GPU). CUDA permitía aprovechar los recursos paralelos de las GPUs de NVIDIA de una manera más accesible a programadores e investigadores no experimentados con el área de gráficos por computador.

En el GTC de la pasada semana NVIDIA ha presentado la versión 5.0 de CUDA (que ya estaba en versión beta para desarrolladores) así como la arquitectura Kepler, una evolución notable de sus chips gráficos, quizá no sobresaliente (la evolución) como lo fuera la evolución de la familia Fermi (presentada en la edición anterior del GTC), pero aún muy grata.

 

Básicamente se presentaron 3 grandes mejoras respecto a la anterior familia, justificadas por todo tipo de factores de mejora y el mediatismo propio de una gran presentación como el incremento a más de 7000 millones de transistores integrados en un procesador. La primera novedad fue la evolución de los multiprocesadores de streams (streaming multiprocessors, SM) en una versión extendida (SMX) con capacidad de 192 procesadores escalares (CUDA cores) en lugar de los 32 anteriores, una mejora más que significativa. La segunda novedad es la capacidad de crear lanzamientos de subprogramas en el dispositivo gráfico (denominados kernels) desde otros subprogramas que se ejecutan en la GPU con parámetros variables en tiempo de ejecución. Esta capacidad puede simplificar ciertas tareas de sincronización e, incluso, se puede crear cálculos recursivos en GPU (algo que estaba prohibido anteriormente). A esta capacidad de lanzar subprogramas con parámetros variables la han denominado Dynamic Parallelism o paralelismo dinámico, característica muy interesante para refinar el cómputo en determinadas estructuras de datos, como el sugerente árbol de cómputo de la simulación del colapso de dos galaxias que se demostró en el GTC. La tercera gran capacidad de la familia Kepler es lo que denominan Hyper-Q, que no es más que la creación de varias colas de trabajo independientes para diferentes hilos de un procesador CPU con varios núcleos de procesamiento, quizá algo menos innovador por la natural evolución a múltiples núcleos de procesamiento de las plataformas CPU.

La parte negativa, es que estas tres capacidades anteriores estarán soportadas en la versión GK110 del procesador, no disponible hasta finales de año, y cuya versión ahora disponible (la GK104) solo incluyen los SMX.

En cualquier caso, felicidades NVIDIA, por la organización del fantástico evento GTC como por el nacimiento de Kepler.

Aquí tenéis un video-resumen del GTC:

Imagen de previsualización de YouTube

Enlaces sobre la noticia:

GTC: http://www.gputechconf.com/

Información sobre Kepler: http://www.nvidia.com/object/nvidia-kepler.html

White Paper: http://www.nvidia.com/content/PDF/kepler/NVIDIA-Kepler-GK110-Architecture-Whitepaper.pdf

Noticias anteriores de procesamiento en GPU:

http://www.madrimasd.org/blogs/supercomputacion_de_consumo/2009/12/06/129786

http://www.madrimasd.org/blogs/supercomputacion_de_consumo/2009/01/29/111970

http://www.madrimasd.org/blogs/supercomputacion_de_consumo/2008/12/10/109037

http://www.madrimasd.org/blogs/supercomputacion_de_consumo/2008/10/16/103763

Etiquetas: , , , , ,

Hace dos semanas se presentó ANACAP 2009 en Madrid

Durante los días 19 y 20 de noviembre, la Universidad Rey Juan Carlos fue escenario del último Workshop Nacional de Aplicaciones de Nuevas Arquitecturas de Consumo y Altas Prestaciones (ANACAP 2009). Consolidándose como un campo de creciente interés, el uso de procesadores no convencionales para acelerar procesos computacionales a precios y consumos energéticos asumibles, reunió a decenas de investigadores de toda España. (más…)

Etiquetas: , , ,

Seminario de Dr. Tim Lanfear sobre NVIDIA Tesla y CUDA en la Universidad Rey Juan Carlos

El próximo martes 31 de marzo contaremos con la ponencia del Dr. Tim Lanfear, arquitecto de soluciones de NVIDIA, empresa líder en soluciones gráficas y supercomputación de consumo. El Dr. Lanfear nos introducirá el concepto de supercomputación personal y nos presentará en profundidad la arquitectura CUDA y su modelo de programación durante el seminario de 2 horas y media.

(más…)

Etiquetas: , , , ,

Segundo Workshop en Computación de Altas Prestaciones sobre Plataformas No Convencionales

Siguiendo con la supercomputación de consumo damos difusión al Workshop UCHPC (UnConventional High Performance Computing). UCHPC’09 es el segundo evento internacional de Computación de Altas Prestaciones sobre plataformas no convencionales, tras el éxito de su primera edición (UCHPC 2008). Con “no convencionales“, los organizadores se refieren a aquellas plataformas que se están utilizando como solución de altas prestaciones, pero que no fueron inicialmente diseñadas con tal objetivo. Por tanto, se busca mostrar las formas no convencionales de actuar ante determinados problemas que quizá en el futuro sí que puedan ser convencionales.
(más…)

Etiquetas: , , ,

Reciente entrevista a David Kirk, responsable científico de Nvidia

El periódico El Mundo ha realizado una entrevista de caracter divulgativo a David Kirk, responsable científico de la compañía Nvidia. La empresa es una de las grandes fabricantes de procesadores gráficos, o GPUs, capaces de realizar más operaciones que las tradicionales computadoras de escritorio. Desde los primeros años de esta década, algunos investigadores acertaron al utilizar estas GPUs en problemas de propósitos que nada tenían que ver con gráficos. Nvidia entró en el sector de la supercomputación de consumo a través de una novedosa arquitectura hardware/software denominada Nvidia CUDA y creando una línea de equipos basada en el modelo de cómputo de sus GPUs.
(más…)

Etiquetas: , , ,

ANACAP 2008: La primera oportunidad en España para el cómputo de altas prestaciones en arquitecturas de consumo

Recientemente, novedosas plataformas de consumo están irrumpiendo en el terreno de la Computación de Altas Prestaciones. Procesadores gráficos y videoconsolas son algunas de las propuestas que están siendo explotadas por los investigadores para mejorar el rendimiento de sus soluciones. El Workshop de Aplicaciones de Nuevas Arquitecturas de Consumo y Altas Prestaciones (ANACAP) pretende ser un punto de encuentro de investigadores nacionales que usen estas tecnologías para acelerar sus soluciones algorítmicas, así como un foro para promover e incentivar nuevas propuestas de cómputo optimizado para problemas de propósito general.

(más…)

Etiquetas: , , , ,
Categorias: General

Procesadores gráficos como supercomputadores de consumo: Intro

Como procesadores gráficos de consumo nos referimos a los chips que incorporan las habituales tarjetas gráficas incluidas en nuestros ordenadores de sobremesa. La misión fundamental de estos sistemas es la de conseguir una imagen final en pantalla, y para la mayor parte de las aplicaciones diarias (gestor de correo electrónico, navegación por Internet, editor de textos, hoja de cálculo, etc.) el procesador gráfico apenas realiza un cómputo exigente. Por esta razón, muchos fabricantes y montadores de equipos finales incluyen tarjetas gráficas integradas, de bajo consumo, de pequeñas dimensiones, de bajo coste y de gran funcionalidad.

 

(más…)

Etiquetas: , , , , ,
Categorias: General

Paralelismo de consumo: ¿el futuro de la computación?

Hasta hace pocos años, los ordenadores personales han venido aumentando su poder de cómputo casi exclusivamente por un aumento en las frecuencias de reloj que repercutían en disparados consumos energéticos y calentamientos del sistema. Ante esta situación, que incluso alarmaba al sector energético mundial, los fabricantes lanzaron productos multinúcleos (multicore) con gran éxito en el mercado, que reducen el consumo energético del sistema de manera sustancial. Someramente, se basan en la posibilidad de realizar cálculos en paralelo sobre varios procesadores de forma simultánea, reduciendo en promedio el tiempo de ejecución del proceso. Sin embargo, un programa preparado para un único procesador no se ejecuta más rápido por correr en un sistema de doble núcleo sin más, puesto que realmente el programa no está preparado para ese sistema doble, o multinúcleo. (más…)

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