Computação de Alto Desempenho
Código: 22125
Departamento: DCET
ECTS: 6
Área científica: Engenharia Informática
Total de horas trabalho: 156
Total de horas de contacto: 30

Computação de alto desempenho é a utilização de um computador paralelo com o objetivo de reduzir o tempo necessário para resolver uma única instância de um problema computacional. Este tipo de computação é atualmente fortemente suportada pela existência de uma biblioteca padrão denominada MPI (Message Passing Interface) para programação paralela por troca de mensagens, e pela facilidade com que se pode agregar computadores pessoais/estações de trabalho de baixo custo de forma a se obterem plataformas de computação paralela, vulgarmente denominadas “clusters”. Este tipo de plataforma tem vindo a ser adotada pelas empresas como primeira escolha para as suas elevadas necessidades computacionais. Nesta unidade curricular pretende-se que os alunos aprendam a analisar e decompor um problema em componentes executáveis em paralelo e que implementem o respetivo programa paralelo recorrendo à biblioteca padrão para troca de mensagens MPI.

Computação Alto Desempenho
Programação Paralela
HPC
MPI

Espera-se que o aluno ao concluir esta unidade curricular esteja capaz de:
  1. Reconhecer o papel e a importância da computação de alto desempenho no contexto mais geral da construção de sistemas de informação e comunicação;
  2. Identificar as principais técnicas, metodologias e ferramentas de computação de alto desempenho;
  3. Aplicar técnicas de computação de alto desempenho para implementar soluções computacionais para resolver problemas de média a elevada complexidade.
 

  1. Motivação e história;
  2. Arquiteturas paralelas;
  3. Projeto de algoritmos paralelos;
  4. Programação por troca de mensagens;
  5. A biblioteca MPI;
  6. Análise de desempenho;
  7. Aplicações.
 

Michael J. Quinn, Parallel Programming in C with MPI and OpenMP, McGraw-Hill Higher Education, ISBN-13: 978-0071232654.
 
Ananth Grama, George Karypis, Vipin Kumar, Anshul Gupta, Introduction to Parallel Computing, 2nd edition, Pearson - Addison Wesley, ISBN-13: 978-0201648652.
 

E-learning

A avaliação tem caráter individual e implica a coexistência de duas modalidades: avaliação contínua (60%) e avaliação final (40%). Essa avaliação será desenvolvida na aplicação de formas diversificadas, definidas no Contrato de Aprendizagem da unidade curricular.

Admite-se que os estudantes dominem a língua inglesa ao nível da leitura e que saibam programar em linguagem C.