Computação Paralela e Distribuída
Ementa:
Conceitos básicos de programação paralela. Introdução a concorrência
e sincronização baseada em memória compartilhada (regiões críticas
condicionais, semáforos e monitores) e distribuída (ambientes de
passagem de mensagem assíncronos e síncronos). Chamada de
Procedimento Remoto (RPC) e Rendezvous. Sistemas e Linguagens
Concorrentes. Medidas de desempenho.
Objetivo:
Oportunizar ao acadêmico um conhecimento voltado a sistemas de alto
desempenho, tornando-o capaz de planejar, implantar e gerenciar
ambientes paralelos e distribuídos.
Carga-horária:
60h
Conteúdo programático:
1. Fundamentos básicos
1.1. Conceitos
1.2. Motivação para ambientes P&D
1.3. Aplicações de ambientes P&D
1.4. Classificação de arquiteturas
1.5. SMP (SymmetricMultiprocessing)
1.6. Cluster
1.7. Dependabilidade
2. Paralelismo e concorrência
2.1. Paralelismo temporal
2.2. Granularidade
2.3. Decomposição
2.4. Tarefas e canais
2.5. Visão geral da Comunicação
2.6. Medidas de desempenho
2.7. Algoritmos paralelos
2.8. Coerência de cache
2.9. Regiões críticas
2.10. Sincronização por semáforos
2.11. Sincronização por monitores
2.12. Rendezvouz;
2.13. RPC (Remote Procedure Call)
3. Cluster computacional
3.1. Classificação de agregados
3.2. Configurações
3.5. PVM (Parallel Virtual Machine)
3.6. MPI (Message Passing Interface)
3.7. Ambientes Middleware
4. Comunicação em Sistemas Distribuídos
4.1. Protocolos em camadas
4.2. Modelo cliente-servidor
4.3. Comunicação em grupo
5. Computação em Grade
5.1. Arquiteturas e topologias
5.2. Portais
5.3. Middlewares
5.4. Exemplos de ambientes de Grid
Bibliografiabásica:
COULOURIS, G. Distributed Systems: Concepts and Design. AddisonWesley, 2001.
TOSCANI, Simão Sirineo; OLIVEIRA, Rômulo Silva; CARÍSSIMI,
Alexandre da Silva. Sistemas Operacionais e Programação
Concorrente. Porto Alegre: Sagra-Luzzatto, 2003.
Bibliografia complementar:
ANDREWS, Gregory R. Foundations of Multithreaded, Parallel, and
Distributed Programming. Addison-Wesley, 2000.
BAKER, Lou; SMITH, Bradley J. Parallel Programming.McGraw-Hill,
1996.
BUYYA, Rajkumar. High Performance Cluster Computing: Architectures
and Systems. Prentice Hall, 1999.
CULLER, David E. Parallel Computer Architecture: hardware/software
approach. Morgan Kaufmann, 1999.
DONGARRA, et al. PVM: Parallel Virtual Machine a User’s Guide and
Tutorial for Networked Parallel Computing. MIT Press, 1994.
ERAD. Anais da Escola Regional de Alto Desempenho.
GROPP, W.; LUSK, E. THAKUR, R. Using MPI-2: Advanced Features of
the Message-Passing Interface. MIT Press, 1999.
JALOTE, P. Fault Tolerance in Distributed Systems. Prentice-Hall, 1994.
Download

Computação Paralela e Distribuída