O documento discute processamento paralelo e classificação de arquiteturas de computadores paralelos. Aborda como usar múltiplos processadores para reduzir tempo de execução e tolerar falhas. Apresenta a classificação de Flynn e exemplos de arquiteturas MIMD compartilhada e distribuída como clusters e NUMA.
1. Instituto Federal de Educação Ciência e Tecnologia do Ceará - Campus Crato
Disciplina: AOC
Prof.: Dr. Guilherme Esmeraldo
Antonio Álvaro Oliveira da Silva
5. Reduzir o tempo total de execução
Tolerância a falhas
Reduz a probabilidade de falhas em
cálculos.
Aproveitamento de recursos
Aproveita melhor os recursos
disponíveis, executando uma aplicação
com múltiplos processos
6. Tradicionalmente o computador é visto como uma maquina sequencial.
Mas essa visão nunca foi totalmente verdadeira:
Em nível de micro-operações,vários sinais de controle são gerados ao
mesmo tempo.
O pipeline de instruções,mesmo quando há sobreposição de operações
de leitura e execução, está presente há muito tempo.
7. É usar múltiplos (dois ou mais) processadores,
simultâneamente, para resolver um mesmo
problema.
8. “Um jeito tradicional para melhorar o
desempenho do sistema é usar múltiplos
processadores que possam executar em paralelo
para suportar uma certa carga de
trabalho[Stallings,2010].”
9. Classificação de Flynn
SSID-(Instrução única, Único Dado ou ) Identificação mais simples,
onde o equipamento é considerado sequencial, pois só é executada
uma instrução por vez para cada dado enviado.
UC UP UM
Fluxos
De Dados
Fluxos
De
Instruções
UC-Unidade Controle
UP-Unidade de
Processamento
UM-Unidade de
Memoria
11. SIMD - (Única Instrução, Múltiplos Dados) é o equivalente ao
paralelismo de dados, onde uma única simples instrução é
executada paralelamente utilizando vários dados de forma
síncrona, em que se executa um único programa ao mesmo Tempo.
UC
ML 1UP 1
UP 2
UP n
.
.
.
.
.
.
Fluxos
De
Instruções
ML 2
ML 3
Fluxos
De Dados
UC-Unidade Controle
UP-Unidade de
Processamento
ML-Memoria Local
12. Exemplo: Processadores vetoriais e
matriciais
Cray 1 (1976)
O protótipo do supercomputador Cray-1 foi
construído pela Cray Research, Inc. O Cray-1
continha 200.000 circuitos integrados e pode
executar 100 milhões de operações de ponto
flutuante por segundo (100 MFLOPS).
13. MISD –(Múltiplas Instruções, Único Dado) Uma sequencia de dados
é transmitida para um conjunto de processadores, onde cada um
executa uma sequência de instruções diferente.Não é
implementada comercialmente.
Até flynn duvidou que algum dia pudesse existir.
14. MIMD –(Múltiplas Instruções, Múltiplos Dado) Um conjunto de
processadores que executam sequências de instruções diferentes
simultaneamente em diferentes conjuntos de dados.
ML ML
. . .
ML
UP1 UP2 UP N
. . .
MG 1 MG 2
Estrutura de
Comunicação
ML- Memória Local
UP- Unidade de
Processamento
MG –Memória Global
15. MIMD - Pode ser dividida de acordo com o
método de comunicação entre os
processadores e a memoria em
compatilhada e distribuida.
16. Nesta classe incluem-se todas as maquinas com múltiplos
processadores que compartilham um espaço de endereços de
memória comum.
UP 1 UP 2 Memória
17. O compartilhamento de dados entre os
processos, torna-se muito mais rápido.
São computadores extremamente Caros;
Existe uma limitação física para a quantidade de
processos;
Utilização de técnicas de sincronização para a
leitura e gravação dos dados.
18. Nesta classe incluem-se as maquinas formadas por varias unidades
processadoras, cada uma com sua própria memória.
UP 1 UP 2
MemóriaMemória
Desvantagens:
Programação mais complicada ;
Paralelismo não é tão intuitivo;
Com muita comunicação o
desempenho acaba sendo
comprometido.
19. Multiprocessador Simétrico (SMP)
arquitetura MIMD com memória compartilhada
Acesso Não-Uniforme à Memória (NUMA)
arquitetura MIMD com memória compartilhada
Agregado de Computadores (Cluster)
arquitetura MIMD com memória distribuída
20. Possuem de dois a sessenta e quatro processadores;
Cada Processador tem acesso a toda a memória do sistema através
de um barramento ou de uma rede de comunicação dedicada;
A sincronização das tarefas é feita por escrita/leitura na
memória,por meio de instruções;
A escalabilidade e limitada pelo numero de caminhos entre a ME e
o processador, podendo saturar o barramento de comunicação;
22. NUMA-AcessoNão-UniformeàMemória
A memória utilizada é distribuída;
Construída com vários módulos que são associados um a cada
processador;
O espaço de endereçamento é único;
Os processadores são organizados em nós.
Cada nó possui 1 ou mais processadores, com sua(s) própria(s)
memória(s) cache (um, dois, ou mais níveis) e alguma memória
principal conectados por um barramento ou outro sistema de
interconexão.
23. Cluster-AgregadodeComputadores
Quando se utiliza dois ou mais computadores em conjunto
para resolver um problema;
Cluster que tem como significado do inglês como
agrupamento;
Os nós são geralmente conectados através de uma porta de
E/S de alto desempenho;
Atualmente eles são utilizados com sistemas gerenciadores
de bancos de dados, com servidores WEB e, principalmente,
para proc. paralelo.
24.
25. Titan com base na Cray da XK7
Montados em 18688 nós, cada
um composto por um CPU série Opteron
6200 de 16 núcleos emparelhado com um
cartão K20 Tesla, todos ligados entre si
com Gêmeos interconexão da Cray para
entregar o poder de computação de pico
de cerca de 20 petaflops.