Paradigmas da Computação Paralela
Mestrado em Eng.ª Informática
2015/2016

João Luís Sobral

Ultima Modificação: 15 Dez 2015
 

 departamento de informática

 

Sumários

 


Semana 1 pdf

15-Setembro-2015, 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 pdf

22- Setembro-2015, 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

 

Semana 3 pdf

29- Setembro-2015, 14h-17h

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 4 pdf

06-Outubro-2015, 14h-17h

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 5 pdf

13- Outubro-2015, 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.

 

Semana 6 pdf

20- Outubro-2015, 14h-17h

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 7 pdf

27- Outubro-2015, 14h-17h

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 8 pdf

03- Novembro-2015, 14h-17h

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 9 pdf

10- Novembro-2015, 14h-17h

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 10 pdf

17- Novembro-2015, 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

Semana 11 pdf

24- Novembro-2015, 14h-17h

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 12 pdf

01- Dezembro-2015, 14h-17h

T: Análise dos principais modelos e linguagens de computação paralelas. Discussão segundo as categorias: nada explícito; paralelismo explícito; paralelismo e decomposição explícita; paralelismo, decomposição e mapeamento explícitos; sincronização explícita e tudo explícito.

TP: Discussão da avaliação dos trabalho prático 1 (OpenMP); discussão do trabalho pratico 2 (MPI).

 

Semana 13

05- Janeiro-2016, 14h-17h

Apresentação de discussão dos trabalhos da disciplina.