Professor: Pedro Pais Lopes (Exaflop)
Horarios: Segunda 29/01 de 14:00h às 18:00h
Resumo: Este curso contemplará a programação paralela heterogênea através de diretivas de compilação no padrão OpenMP com suporte a dispositivos de processamento massivo, como GPUs, e com enfoque na área de computação científica. Serão abordados os conceitos do padrão, versões que suportam o processamento nestes dispositivos, modelos de memória e execução, comparação com outras formas de programação, compiladores suportados e exemplos práticos.
Objetivo: Ementa:
- Breve introdução à computação paralela massiva
- Introdução ao conceito de programação por diretivas de compilação
- Padrão OpenMP
- Evolução do padrão e versionamento
- Principais diretivas
- Comparação com outras formas de programação paralela massiva
- Compiladores com suporte ao padrão
- Exemplos práticos
- Estudo de caso
Bibliografia:
- https://www.openmp.org/specifications/ OpenMP 5.1 Specification
- R.v.d. Pas et. al., Using OpenMP - The next Step;, MIT Press, Oct. 2017, ISBN: 9780262534789
- Jose Monsalve Diaz et. al, "Is OpenMP 4.5 Target Off-load Ready for the Real World;, https://openmpcon.org/wp-content/uploads/2018_Session1_Diaz.pdf
- NASA Advanced Supercomputing Division, “Using OpenMP 4.5 Target Offload for Programming Heterogeneous Systems”, https://www.nas.nasa.gov/hecc/assets/pdf/training/OpenMP4.5_3-20-19.pdf