processamento paralelo

Post on 10-Jul-2015

784 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Instituto Federal de Educação Ciência e Tecnologia do Ceará - Campus Crato

Disciplina: AOC

Prof.: Dr. Guilherme Esmeraldo

Antonio Álvaro Oliveira da Silva

Previsão do tempo

Grandes volume dados a ser

processados(Matemática Computacional).

Previsão do tempo

Grandes volume dados a ser

processados(Matemática Computacional).

Previsão do tempo

Grandes volume dados a ser

processados(Matemática Computacional).

Processamento Paralelo

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

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.

É usar múltiplos (dois ou mais) processadores, simultâneamente, para resolver um mesmoproblema.

“Um jeito tradicional para melhorar odesempenho do sistema é usar múltiplosprocessadores que possam executar em paralelopara suportar uma certa carga detrabalho[Stallings,2010].”

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

FluxosDe Dados

FluxosDe Instruções

UC-Unidade ControleUP-Unidade de ProcessamentoUM-Unidade de Memoria

Exemplos: Máquinas monoprocessadas

OBS: máquina de base é formada de componentes de hardware: portas, ULAs, memórias, etc.

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

.

.

.

.

.

.

FluxosDe Instruções

ML 2

ML 3

FluxosDe Dados

UC-Unidade ControleUP-Unidade de ProcessamentoML-Memoria Local

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).

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.

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 LocalUP- Unidade de ProcessamentoMG –Memória Global

MIMD - Pode ser dividida de acordo com o método de comunicação entre osprocessadores e a memoria em

compatilhada e distribuida.

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

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.

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.

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

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;

SUN Ultra Enterprise 10000 (máximo de 64 processadores)

NUMA - Acesso Nã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.

Cluster - Agregado de Computadores

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.

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.

PEGUNTAS

&RESPOSTAS

OBRIGADO !

top related