Paradigmas da
Computação Paralela João Luís Sobral |
departamento de informática |
Sumários
20-Setembro-2016, 14h-17h
T: Introdução ao módulo de paradigmas de computação
paralela: resultados da aprendizagem, programa e avaliação.
TP: Apresentação do planeamento da disciplina
Semana 2
27-Setembro-2016, 14h-17h
T:
Introdução aos "clusters" de computação.
TP:
Visita à infra-estrutura Search
Semana 3 pdf
04-Outubro-2016, 14h-17h
T: Introdução à programação de sistemas de memória
partilhada: OpenMP.
TP: Exploração de paralelismo em OpenMP:
análise do vários construtores da linguagem
T:
Programação concorrente: Segurança e vivacidade. Programação concorrente em linguagens
orientadas ao objeto. Programação concorrente em Java. Extensões de
concorrência introduzidas em Java 5 e
Java 8.
TP:
Estudo das primitivas de programação concorrente em Java
Semana 5 pdf
T:
Análise do standard OpenMP 4.0: afinidade de fios de
execução, seções de vetores, dependências entre tarefas, suporte a vetorização
e a aceleradores externos.
TP:
exploração de paralelismo com OpenMP
Semana 6 pdf
25-Outubro-2016, 14h-17h
T: Optimização de aplicações em sistemas de memória
partilhada: análise da principais limitações à escalabilidade das aplicações
(limite de largura de banda da memória, sobrecarga de paralelismo/excesso de
sincronização, falta balanceamento da carga computacional).
TP: Otimização de programas OpenMP.
Apresentação do primeiro trabalho prático da disciplina.
T:
Paradigma de programação baseada em passagem de mensagens. Introdução ao
standard MPI (Message Passing
Interface).
TP:
Codificação de algoritmos paralelos no standard MPI.
Semana 8 pdf
T:
“Middleware” para aplicações paralelas/distribuídas.: identificação,
comunicação e ciclo de vida das entidades. Estudo do Java RMI e .Net “remoting”. Comparação com o paradigma de passagem de
mensagens.
TP:
Análise do Java RMI, em particular a sua implementação através de passagem de
mensagens.
Semana 9 pdf
T:
Metodologia de desenvolvimento de aplicações paralelas: partição, identificação
de comunicação, aglomeração e mapeamento. Análise dos tipos de algoritmos
paralelos mais comuns: “heartbeat”, “master-slave”, “divide & conquer”
e “pipeline”.
TP:
Codificação de padrões comuns de computação no standard MPI.
Semana 10 pdf
T:
Medição e optimização do desempenho das aplicações paralelas: Modelos de
desempenho, análise da escalabilidade das aplicações
TP:
Estudo do impacto do balanceamento da carga e da sobrecarga do comunicação numa
implementação paralela do crivo de Eratóstenes
Semana 11 pdf
06-Dezembro-2016, 14h-17h
T: Modelos de consistência de memória. Análise do
modelo do OpenMP e do Java. Sistemas de memória
partilhada distribuída (DSM).
TP: Estudo do modelo de consistência de memória do OpenMP
T:
Modelos de programação híbridos: Combinação de passagem de mensagens com
memória partihlas e “Partitioned
Global Address Space (PGAS)”.
TP:
Análise e implementação híbrida (MPI/OpenMP) do crivo de Eratóstenes
Semana 13
T: Apresentação do trabalho pratico 2 (MPI).
TP: Apresentação do trabalho pratico 2 (MPI).