Herramientas de desarrollo de aplicaciones paralelas: Debugging y análisis de rendimiento
Datas: 02.08.2010 ó 05.08.2010 Horario: de 09:00 a 14:00h
Organiza: CESGA
Colabora: UDC, USC, i-MATH
Dirixido a: Investigadores y docentes que desarrollan aplicaciones científicas. Personal técnico de apoyo a la optimización de aplicaciones científicas.
Nº horas: 20
Lugar: Centro de Supercomputación de Galicia, Avda. de Vigo, s/n (Campus Sur) - Santiago de Compostela
Contacto:cursos
Conocimientos básicos de programación en Fortran y/o C.
Plazas limitadas (3 personas).
Inscripción hasta el 29 de Julio de 2010.
Objetivo:
Debido al incremento del paralelismo implícito en el desarrollo de los actuales procesadores, la detección de fallos y la ejecución eficiente de los códigos paralelos se han convertido en un objetivo fundamental para satisfacer la creciente demanda de potencia de cómputo. Existen herramientas de análisis de rendimiento y debugging que ayudan a detectar los problemas existentes y proporcionan la información necesaria para resolverlos. En este curso se proporcionará una introducción a los conceptos de debugging y análisis de rendimiento de aplicaciones paralelas, mostrando al usuario las diferentes técnicas utilizadas. Así mismo, se mostrará el uso de herramientas representativas para mostrar las capacidades de este tipo de aproximaciones. Con los conocimientos adquiridos, el alumno/a tendrá la capacidad para depurar correctamente una aplicación paralela, así como para realizar un análisis del rendimiento e interpretar los resultados obtenidos.
Temario:
Visión general y organización del curso.
Debugging de aplicaciones paralelas:
Aproximación sistemática al proceso de debugging.
Tipos de fallos de aplicaciones: fallos comunes, problemas de difícil detección, fallos de memoria.
Problemas específicos de aplicaciones paralelas: race conditions, interbloqueo.
Uso de herramientas de debugging en aplicaciones paralelas: debugging de código, de memoria y multithread.
Ejemplos prácticos.
Análisis de rendimiento de aplicaciones paralelas:
Análisis de rendimiento: motivaciones y concepto.
Técnicas de instrumentación.
Técnicas de medida y análisis de rendimiento.
Herramientas para análisis de rendimiento de aplicaciones paralelas.