computação paralela walfredo cirne univ. federal de campina grande
TRANSCRIPT
Computação Paralela
Walfredo CirneUniv. Federal de Campina Grande
http://walfredo.dsc.ufcg.edu.br
Lei de Moore
• Computadores dobram de performance a cada 18 meses
• Nas últimas 2 decadas, computadores melhoraram de performance em 10.000 vezes
• Como resultado, os computadores hoje têm mais ou menos o mesmo desempenho (na mesma ordem de magnitude)
Paralelismo
• Em suma, computadores hoje são muuuito rápidos
• Mas fazemos coisas cada vez mais complexas
• Mas temos cada vez mais dados para processar
• O que fazer se você precisa processar por anos?
• Usar vários processadores simultaneamente
Lei de Amdalh
• speed-up = tempo seqüencial / tempo paralelo
• tempo seqüencial = intrinsecamente-seqüencial + paralelizável
• melhor tempo paralelo = intrinsecamente-seqüencial
• melhor speed-up = 1 + paralelizável/intrinsecamente-seqüencial
Principais Aspectos de Computação Paralela
• Plataforma de Execução• Modelos de Programação• Aplicações
Plataformas de Execução de Aplicações Paralelas
• SMPs acoplamento• MPPs• NOWs• Grids distribuição
SMP
Memória
CPU
CPU
...
CPU
MPP
CPU
Mem.
CPU
Mem.
CPU
Mem.
...
Escalonador
requisições
NOW
CPU
Mem.
CPU
Mem.
CPU
Mem.
...
requisições requisições requisições
Grid
CPU
Mem.
CPU
Mem.
CPU
Mem.
...
Internet
Características das Plataformas de Execução
SMPs MPPs NOWs Grids
Conectividade excelente muito boa boa média/ruim
Heterogeneidade nula baixa média alta
Compartilhado não não sim sim
Imagem única comum comum múltipla
Escala 10 1.000 1.000 100.000
Grids podem diferir bastante
• TeraGrid – 4 centros de supercomputação norte-americanos– Cada centro com milhares de processadores dedicados
ao TeraGrid– Canais de altíssima velocidade (40 GBits/s)– Poder agregado de 13,6 TeraFlops
• SETI@home– Ciclos ociosos de 1.6 milhões de processadores
espalhados em 224 países– Computa em média a uma velocidade de 10 Teraflops
Grid como Fonte de Computação
[a metáfora da rede elétrica]
Grid Computacional(fonte de recursos
computacional)
Grid Computacional(fonte de recursos
computacional)
Um Grid do Futuro
VR Simul
Grid Auditing
MegaCiclos
Databank Inc.
Mastercard
Embratel
Modelos de Programação
• Troca de mensagens– MPI, PVM– sockets
• Memória compartilhada – OpenMP– pthreads, threads Java
Aplicações
• SPMD x MPMD– SPSD = sequêncial
• Classes de aplicação– Bag-of-Tasks– Master-slave (ou manager-work :-)– Data parallel
• Granularidade– Grão = computação feita entre comunicações– Grão fino requer SMP (ou, pelo menos, MPP)– Grão grosso tolera Grid