Área de concentração: 55134 - Ciências de Computação e Matemática Computacional

Criação: 14/06/2025

Nº de créditos: 12

Carga horária:

Teórica
Por semana
Prática
Por semana
Estudos
Por semana
Duração Total
3 1 8 15 Semanas 180 Horas

Docentes responsáveis:

Fabrício Simeoni de Sousa
Leandro Franco de Souza


Objetivos:

Apresentar ferramentas modernas de programação paralela aplicadas à simulação numérica de EDPs; Capacitar o aluno a projetar, implementar e otimizar códigos paralelos eficientes; Discutir estratégias práticas de paralelização em ambientes de HPC; Introduzir bibliotecas e frameworks amplamente utilizados na comunidade científica.


Justificativa:

Ferramentas de programação paralela e computação de alto desempenho são essenciais em aplicações de larga escala, especialmente as que envolvem aplicações em dinâmica de fluidos computacional.


Conteúdo:

1. Introdução à Computação de Alto Desempenho (HPC); Arquiteturas paralelas: memória compartilhada vs. memória distribuída; Modelos de paralelismo: dados, tarefas, híbridos; Medidas de desempenho: speedup, eficiência, escalabilidade;
2. Programação paralela com OpenMP; Paralelismo em memória compartilhada; Diretivas, paralelismo de laços, sincronização;
3. Programação paralela com MPI; Conceitos de comunicação entre processos; Troca de mensagens ponto a ponto e coletivas; Distribuição de dados e decomposição de domínio;
4. Estruturas de dados e paralelismo; Armazenamento e paralelização de matrizes esparsas; Ordenação de grafos e balanceamento de carga;
5. Solução de sistemas lineares esparsos com bibliotecas paralelas (PETSc, Trilinos); Métodos iterativos paralelos (GMRES, CG, Multigrid);
6. Métodos de decomposição de domínio com e sem sobreposição; Métodos de Schwarz; introdução aos métodos multiescala.
7. Estudos de caso e projetos aplicados; Implementação de códigos paralelos para modelos de difusão, advecção e escoamento incompressível; Análise de desempenho e escalabilidade.


Forma de avaliação:

Listas de exercícios, trabalhos práticos e projeto de final de curso.


Observação:

Nenhuma.


Bibliografia:

Fundamentais:
1. Gropp, W.; Lusk, E.; Skjellum, A. Using MPI: Portable Parallel Programming with the Message-Passing Interface. MIT Press, 1999;
2. Balay, S. et al. PETSc User Manual, 2025;
3. Saad, Y. Iterative Methods for Sparse Linear Systems, SIAM, 2003;
4. Smith, B.; Bjørstad, P.; Gropp, W. Domain Decomposition: Parallel Multilevel Methods for Elliptic PDEs, Cambridge University Press, 2004;
5. Dongarra, J. The Sourcebook of Parallel Computing, Elsevier Science, 2003

CONECTE-SE COM A GENTE
 

© 2025 Instituto de Ciências Matemáticas e de Computação