Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

AMD

AMD no es sólo un competidor de la industria de los microprocesadores, sino que, debido a que estos circuitos se han desarrollado de manera tal que ya incluyen varios núcleos dentro del propio procesador, han tenido que incursionar en lo que se denomina procesamiento en paralelo, que implica el utilizar en una tarea varios procesadores al mismo tiempo, en donde el programa en ejecución divide las tareas entre los diferentes núcleos y así el resultado llega más rápidamente.

El supercómputo o procesamiento en paralelo tiene muchas ventajas, pero, desde luego, retos muy complejos, los cuales no están aún solucionados, entre los que destacan cómo hacer sistemas que paralelicen automáticamente las partes paralelizables, asunto que aún lo decide ‘a mano’ el programador. Todos los sistemas distribuidos resultan a la fecha muy difíciles de procesar y no parece haber en muchos casos una solución óptima e incluso a veces, simplemente satisfactoria.

AMD ha mostrado, en su Conferencia Fusion 12, su conjunto de herramientas para supercómputo, basadas todas en OpenCL, una herramienta para paralelizar programas. Lo que es interesante no son sólo las bibliotecas de funciones generadas, sino que todas son de código abierto y gratuitas, y están disponibles al menos por ahora para Linux y Windows.

Las herramientas que presentó AMD contiene todo lo que se necesita para construir un programa paralelizable y analizar los cuellos de botella que pueden darse en su ejecución o para efectos de optimización.

En esta ocasión se hizo énfasis en las herramientas para depurar y perfilar una aplicación en paralelo. El software en este caso, aunque puede usarse de forma separada, se integra de manera poderosa con Visual Studio 2012 (puede integrarse también a VS 10 y 11) y entonces el medio ambiente de .NET se vuelve mucho más cómodo para optimizar las aplicaciones o bien, para depurar errores que hacen que en muchas ocasiones el sistema no se comporte como se esperaba. Se mostró un ejemplo completo de este análisis (basado en el render de una tetera). Los resultados son muy buenos, lo que demuestra la capacidad de estas nuevas herramientas.

El depurador permite ver cada tarea corriendo y tiene una serie de funciones que nos permite ver los valores de las variables, poner breakpoints y correr paso a paso el programa, con despliegue de cómo van cambiando las variables.

El primer beta público aparecerá en un par de semanas y quien programe aplicaciones en paralelo usando OpenCL, verá que se abre un camino menos tortuoso en este tema del supercómputo.

Referencias: Conferencia AMDF 2012 Página de desarrolladores de AMD

Desde la Red…
Comentarios