Código |
14524
|
Ano |
1
|
Semestre |
S1
|
Créditos ECTS |
6
|
Carga Horária |
OT(15H)
|
Área Científica |
Informática
|
Objectivos de Aprendizagem |
Esta unidade curricular (UC) tem como objetivo estudar as questões mais importantes no desenvolvimento de aplicações para computação de alto desempenho e discutir os principais desafios da área. Pretende-se estudar arquiteturas heterogéneas; aplicações sobre grandes quantidades de dados; otimização de desempenho e mecanismos de resiliência.
|
Conteúdos programáticos |
1 – Análise dos sistemas atuais para paralelismo em larga escala. 2 – Metodologias de desenvolvimento de programas paralelos em larga escala. 3 – Algoritmos distribuídos e paralelos. 4 – Linguagens de programação paralela. 5 – Programação em sistemas de “many-core” (cpu e gpu). 6 – Monitorização de desempenho. 7 – Análise das causas de redução de desempenho. 8 – Tolerância a falhas.
|
Metodologias de Ensino e Critérios de Avaliação |
As aulas são essencialmente expositivas, divididas entre a apresentação dos conteúdos programáticos feita pelo docente e apresentações de temas baseados em artigos científicos feitas pelos alunos. Após cada apresentação seguir-se-á a discussão crítica do tema.
|
Bibliografia principal |
High Performance Computing, Modern Systems and Practices. Thomas Sterling, Matthew Anderson and Maciej Brodowicz, 2018, Morgan Kaufmann.
|
Língua |
Português
|