Computação Grid

área científica
Informática / Sistemas de Informação
créditos
6
escolaridade
ensino teórico-prático (TP) - 3 horas/semana
idioma(s) de lecionação
a inserir brevemente
objectivos

Pretende-se que os alunos adquiram:

  • As noções básicas sobre computação paralela
  • Familiaridade com as estratégias para a computação de elevado desempenho (HPC).
  • Um conhecimento aprofundado do paradigma de computação GRID.
  • Capacidade de utilizar as principais arquitecturas e “middleware” GRID actualmente disponíveis.
competências

Distinguir e descrever os principais tipos de sistemas de computação paralela;

Enunciar as principais vantagens e limitações do processamento paralelo, bem como descrever e diferenciar as principais estratégias de paralelização

Definir os principais métodos e índices e avaliação de desempenho.

Paralelizar código de média/elevada complexidade escolhendo as estratégias mais adequadas.

Submeter processos para processamento paralelo na plataforma GRID de forma eficiente.

conteúdos

Módulo1: Computação paralela e de alta performance

1. Definição e emergência do processamento paralelo

2. Aplicações e algoritmos em computação paralela

3. Computação de elevado desempenho (high-performance computing, HPC)

4. Estruturas de processamento e estratégias de colaboração

5. Comunicação entre processadores

6. Paralelização: benefícios e limitações. Índices de desempenho

7. Exemplos e implementação prática e avaliação de algoritmos paralelos

Módulo 2: Computação Grid

1. Sistemas de computação GRID

2. Paradigma e caracterização

3. Arquitecturas

4. Programação em GRID: ferramentas e ambientes de desenvolvimento

5. Casos de estudo: gLite; Globus; normas do Open Grid Forum; exemplos.

avaliação

Trabalho prático de paralelização em workstation cluster (sob MPI ou similar) -  relatório e apresentação pública.

Trabalho prático de paralelização na plataforma GRID - relatório e apresentação pública.

requisitos
Programação
metodologia

Será uma disciplina eminentemente prática. As aulas práticas terão lugar em salas de computadores equipadas com o software adequado. Será assegurado acesso fora do horário lectivo. A autonomia será encorajada. O processo de aprendizagem será baseado na resolução de problemas (PBL), sendo os trabalhos de avaliação definidos cedo, no ínicio de cada módulo, sendo diferentes para cada grupo (de 2 alunos). O trabalho consistirá essenciamente em escrever e testar código paralelo, pelo que se exigem competências prévias de programação a um nivel apreciável.

As aulas teóricas tratarão dos aspectos relevantes para a implementação eficiente, teste e avaliação de desempenho de código paralelizado, mas de uma forma generalista. Os estudantes serão encorajados a pesquisar autonomamente a literatura para encontrarem ajuda nos problemas específicos levantados nos seus trabalhos. Restringir os elementos de estudo a diapositivos ou notas fornecidas pelo professor é considerado má prática.

Procurar-se-á assegurar a realização de uma visita de estudo a um centro de HPC. 

bibliografia recomendada

Dongarra, J; Foster, I; Fox, G C; Gropp, W; Kennedy, K; Torcan, L and White, A (eds. 2003) The Sourcebook of Parallel Computing. San Francisco: Morgan Kaufmann Publishers, Inc.

Roosta, S (2000) Parallel Processing and Parallel Algorithms: Theory and Computation. New York, etc: Springer-Verlag.

Geist, A; Beguelin, A; Dongarra, J; Jiang, W; Manchek, R and Sunderam, V (1994) PVM – Parallel Virtual Machine: A Users´s Guide and Tutorial for Networked Parallel Computing. Cambridge (MA) and London: MIT Press

G. Andrews (2000), Foundations of Multithreaded, Parallel and Distributed Programming, Addison-Wesley

Ian Foster, Carl Kesselman (eds. 2003): The Grid 2: Blueprint for a New Computing Infrastructure, Elsevier.

Este sítio web utiliza cookies sem recolher informação pessoal que permita a identificação dos utilizadores. Ao navegar neste sítio está a consentir a sua utilização.saber mais
Para que esta página funcione corretamente deve ativar a execução de Javascript. Se tal não for possível, algumas funcionalidades poderão estar limitadas.