Máster HPC

  • Máster HPC

Subscríbeche

  • Suscribete a Novas CESGA

HPC User Portal

  • HPC User Portal

Estado dos sistemas

  • Solo visible desde Firefox o Chrome.

Compromiso coa Igualdade

  • Igualdad CESGA

Síguenos ...

  • Twitter FacebbokFlickrYouTube CESGA

Servizos PYME's

  • Servicios para Empresas

díxitos Decembro

  • díxitos Decembro 2017

  • CESGA ICTS

Curso: Optimización e profiling de aplicaciones HPC usando herramientas libres

 0 voto(s)

Martes 29/05/2018 17:21

Obxectivo do Curso: O obxectivo xeral do curso é proporcionar ao alumno un adestramento básico no uso das distintas ferramentas existentes no mundo do Software Libre destinadas á análise, depuración e optimización de código secuencial e paralelo.

Entre as ferramentas que se estudarán neste curso destacan as desenvolvidas no BSC (Barcelona Supercomputing Centre), Paraver, Extrae e Dimemas, ademais de ferramentas clásicas moi útiles para o profiling e a optimización como gprof ou callgrind/valgrind, todo iso sobre os compiladores GNU.

Prerequisitos: Requírese saber programar aplicacións secuenciales en linguaxe C/C++ ou en Fortran. Uns coñecementos básicos de programación paralela mellorarán o seguimiento do curso.

Duración: 15 horas

Data: 12, 13 e 14 de xuño en horario de 9:00h a 14:00h.

REXISTRO

Programa do curso:

- Día 1: Neste primeiro día o obxectivo será realizar unha introdución ao curso en xeral e a algúns conceptos comúns necesarios durante o mesmo. Logo, optimizaremos o noso código examinando as principais opcións presentes nos compiladores GNU e analizaremos o seu rendemento usando o profiler de GNU, gprof, e as ferramentas callgrind/valgrind para detectar pescozos de botella, identificando en que partes do mesmo debemos incidir á hora de optimizalo.

  * Breve introdución ás arquitecturas modernas e ás posibilidades de paralelización do código. Introdución a distintas alternativas libres dispoñibles para a depuración, análise e optimización de código.

* Uso dos compiladores GNU para mellora do rendemento do noso código.

* Utilización das ferramentas GNU gproff e Callgrind/Valgrind para analizar o rendemento e o uso de recursos.

- Día 2: Na segunda xornada do curso centrarémonos/centrarémosnos nas oportunidades de paralelización de código utilizando memoria compartida. Neste caso centrarémonos nas posibilidades de vectorizar o código e na posibilidade de extraer paralelismo usando pragmas OpenMP, que constitúen as dúas formas máis sinxelas de poder extraer paralelismo nun código secuencial.

* Como guías deste proceso utilizaremos as ferramentas desenvolvidas no BSC: Paraver, Extrae e Dimemas.

- Día 3: Na terceiro e última xornada do curso centrarémonos nas oportunidades de paralelizar o noso código en memoria distribuída. Neste caso utilizaremos como tecnoloxía de referencia a librería de paso de mensaxes MPI.

* Novamente faremos uso das ferramentas do BSC: Paraver, Extrae y Dimemas.

* Actividade na que cada alumno poderá utilizar os coñecementos adquiridos durante o curso para empezar a optimizar o seu código propio.

Profesor: Emilio Padrón é un investigador e profesor do Grupo de Arquitectura de Computadores da Universidade da Coruña. As súas principais líñas de investigación son a Computación de Altas Prestacións e os Gráficos por Computador.

Valorar: