Currículo
Computação de Alto Desempenho CompAD
Contextos
Groupo: Escola de Tecnologias e Arquitetura > Optativas
ECTS
6.0 (para cálculo da média)
Objectivos
Após a conclusão desta unidade curricular o aluno deverá ficar apto a: OA1: Compreender os conceitos e terminologia da computação de alto desempenho. OA2: Desenvolver e analisar o desempenho de programas de alto desempenho para arquitecturas de memoria partilhada. OA3: Desenvolver e analisar o desempenho de programas de alto desempenho para arquitecturas de memoria distribuída. OA4: Explorar de forma independente bibliotecas, ferramentas e novos paradigmas de computação para aplicações em computação de alto desempenho.
Programa
CP1: Introdução à computação paralela CP2: Arquitecturas paralelas CP3: Modelos de programação paralela CP4: Programação para sistemas de memória partilhada (OpenMP) CP5: Programação para sistemas de memória distribuída (MPI) CP6: Algoritmos para sistemas paralelos CP7: Bibliotecas e ferramentas para computação de alto desempenho CP8: Novos paradigmas de computação de alto desempenho
Método de Avaliação
1 aula teórica e 2 sessões tutoriais por semana. Os conceitos e aplicações fundamentais são introduzidos nas aulas teóricas, sendo seguidos por sessões tutoriais em que o estudante aprende e resolve por si próprio diversas aplicações da matéria em estudo. Os estudantes realizam ainda um projecto ao longo da UC em que aplicam as competências adquiridas na resolução dum problema do foro da UC, preferencialmente em relação próxima com a temática abordada na sua tese. | A avaliação é realizada através da realização dum projecto final, apresentado sob a forma dum seminário de curta duração (20 min.) e um relatório na forma dum artigo de 6-10 páginas. Os alunos são encorajados a propor um tópico para o trabalho em próxima relação com a sua tese de doutoramento, de forma a que o trabalho realizado na UC contribua directamente para a tese
Carga Horária
Carga Horária de Contacto -
Trabalho Autónomo - 125.0
Carga Total -
Bibliografia
Principal
- ? "Sourcebook of Parallel Programming" by J. Dongara, I. Foster, G. Fox, W. Gropp, K. Kennedy, L. Torczon, and A. White (eds), Morgan Kaufmann. ? "Scientific Parallel Computing" by L.R. Scott, T. Clark, and B. Bagheri, Princeton University Press. ? "Parallel Scientific Computing in C++ and MPI" by G. Karniadakis and R. Kirby II, Cambridge University Press. ? "Parallel Programming: Techniques and Applications using Networked Workstations and Parallel Computers" (2nd ed.) by B. Wilkinson and M. Allen, Prentice Hall. ? "The Software Optimization Cookbook" (2nd ed.) by R. Gerber, A. Bik, K. Smith, and X. Tian, Intel Press. ? "Software Optimization for High Performance Computing: Creating Faster Applications" by K.R. Wadleigh and I.L. Crawford, Hewlett-Packard professional books, Prentice Hall. :