Revista Digital Universitaria
ISSN: 1607 - 6079 Publicación mensual
 
1 de junio de 2011 Vol.12, No.6
  Inicio Ejemplares Directorio Quiénes somos Busca artículos Vínculos Contacto Mapa de sitio
 
Documento sin título
 
Videojuegos en la Astrofísica Computacional del Siglo XXI
Alfredo J. Santillán González
CITA
PDF
   
Astrofísica Computacional en la era de...
Cuando los objetos astronómicos son...
La hidrodinámica de fluidos Astrofísicos
Conclusiones
Bibliografía
Aumentar Letra Disminuir Letra Disminuir Letra   facebook
twitter
google
 

Introducción


Posiblemente uno de los grandes sueños de un adolescente del siglo XXI, y de muchos adultos también, es tener en sus manos una consola de videojuegos del tipo Xbox 360, Wii, PlayStation 3, Nintendo DS, PSP, PlayStation 2, etcétera, e invertir gran parte de su tiempo en tratar de descifrar los retos que le plantean los diferentes juegos. Para esa generación ya no es sorprendente que los despliegues sean en tres dimensiones (3D) y es probable que muchos crean que así ha sido siempre. Sin tener la intención de desilusionar a nadie, esto no ha sido así. Todo dispositivo electrónico tiene su propia historia y evolución, y por supuesto estas consolas no son la excepción. De acuerdo a WIKIPEDIA, “una videoconsola es un pequeño sistema electrónico que está diseñado para ejecutar juegos desarrollados en un computador personal o servidor”. Para desarrollar sus funciones básicas las videoconsolas cuentan con unidades de procesamiento central (CPU, por sus siglas en inglés) y las más modernas con unidades de procesamiento gráfico (GPU, por sus siglas en inglés) encargadas del manejo exclusivo de gráficos, aligerando la carga de trabajo del CPU. Las GPUs que conocemos actualmente provienen de los chips gráficos que se utilizaban a finales de los setenta y principios de los ochenta del siglo pasado. A medida que pasó el tiempo estos chips evolucionaron a lo que se conoce como tarjeta VGA (Video Graphics Array; IBM, 1987). Cuando aparece Microsoft Windows, a principios de los 90, enfocan gran parte de sus baterías a los gráficos bidimensionales (2D), dando origen a un estándar para la representación de objetos gráficos, la interface GDI (Graphics Device Interface). Tiempo después aparecen las famosas APIs (Application Programming Interface), que no son otra cosa que una interfaz de comunicación entre diferentes componentes del software. A finales del siglo XX, y principios del siglo XXI, aparecen las primeras unidades de procesamiento gráfico (GPU, ver figura 1).

tpg

Figura 1. Típica unidad de procesamiento gráfico.

Es hasta el 2006 cuando la empresa NVIDIA (http://www.nvidia.es) presenta el leguaje de programación CUDA (acrónimo del inglés Compute Unified Device Architecture) y las GPUs toman un rumbo diferente al de los gráficos, comenzando a utilizarse como procesadores de cálculo y a ser consideradas una herramienta esencial para el cálculo científico de alto rendimiento, dando origen a un nuevo término para describirlas, las GPGPU (General-Purpose Computing on GPU). Por su naturaleza, a diferencia de las CPUs, las GPUs modernas presentan un alto grado de paralelismo inherente, lo que les permite hacer una cantidad considerable de operaciones al mismo tiempo (para más detalles se recomienda leer los siguientes artículos: Beltrán, 2008; Masood, 2009; Charte-Ojeda 2010; Santamaría 2011).

creditos

Figura 2. Créditos. Jawad Massod 2009 (http://www.hardwareinsight.com/nvidia-cuda/)

En la figura 2 mostramos un ejemplo de cómo han evolucionado tanto las CPUs como las GPUs en el tiempo, y los respectivos rendimientos óptimos que pueden dar dichas unidades de procesamiento. Ahí se puede ver que las GPUs han tenido un desarrollo espectacular comparado con las CPUs.

Animación 1. Amber GPU vs CPU - NVIDIA Tesla Demonstration. Amber es un código numérico que se utiliza para hacer dinámica molecular (http://ambermd.org)

En la animación 1 se muestran los beneficios de esta tecnología aplicada a la dinámica molecular. Claramente el lector se dará cuenta del poder de cálculo de las GPUs (derecha) con respecto a las CPUs (izquierda). La animación del lado izquierdo presenta un movimiento pausado al girar, en tanto que la del lado derecho es todo lo contrario. Es un movimiento completamente continuo, debido a la eficiencia con que el GPU hace las operaciones en paralelo para rotar la matriz tridimensional que representa a la proteína. Todo este desarrollo tecnológico ha traído grandes beneficios a diferentes áreas de la ciencia, y sin duda, a la astrofísica. En las siguientes secciones daremos una serie de ejemplos en los que se ha aplicado dicha tecnología.


 
  subir        
 
  Editorial
 

Licencia de Creative Commons
Esta obra está bajo una licencia de Creative Commons