CI088 - Tópicos em Sistemas
Distribuídos:
(Introdução à Computação Paralela)
Primeiro Semestre de 2007
Programa:
Introdução. Conceitos e
Classificação de Arquiteturas para
Computação Paralela. Organização de
sistemas de computação paralela,
implicações nos modelos de
programação e fatores de desempenho.
Estruturas de interconexão e custos de
comunicação. Modelos
para programação paralela. Principios de projeto de
algoritmos paralelos:
granularidade, decomposição e
caracterização da interação entre tarefas.
Balanceamento de Carga. Modelos de algoritmos paralelos.
Técnicas para melhorias de desempenho. Primitivas de
comunicação e
sincronização. Modelos analíticos de
programas paralelos.
Programação com troca de mensagens e em paradigma
de memória compartilhada.
Exemplos de algoritmos paralelos, implementação e
medições de desempenho.
Uso de ferramentas de auxílio a programação
paralela.
Pré-requisitos:
Arquitetura de Computadores, Sistemas Operacionais,
Algorítmos III
Bibliografia
Livro principal:
An Introduction to Parallel Computing: Design and Analysis of
Algorithms, Second Edition, Addison Weslesy, 2003, by Ananth Grama,
George Karypis, Vipin Kumar, Anshul Gupta
Material Adicional:
Parallel Programming with MPI, by Peter Pacheco, Morgan
Kaufmann Publishers Inc.