Processamento de Alto Desempenho Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São...

Post on 07-Apr-2016

215 views 0 download

Transcript of Processamento de Alto Desempenho Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São...

Processamento deAlto Desempenho

Prof. Mateus Raeder

Universidade do Vale do Rio dos Sinos- São Leopoldo -

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• PVP

– Cray C-90

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• SMP

– SUN Enterprise 10000

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• DSM

– Cray T3D

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• MPP

– IBM SP-2

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• MPP

– Intel Paragon

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• NOW

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• COW

Processamento de Alto Desempenho – Prof. Mateus Raeder

Exemplos de máquinas• COW

– Columbia

Processamento de Alto Desempenho – Prof. Mateus Raeder

Programação Paralela x Distribuída

Processamento de Alto Desempenho – Prof. Mateus Raeder

Programação Concorrente• O que é Programação Concorrente?

– Um programa que possui várias partes em execução• Em uma ou mais CPUs

– Pode acontecer em um supercomputador, uma máquina paralela ou em uma máquina simples

• Pode ocorrer:– Pseudo-paralelismo– Paralelismo real– Paralelismo misto

Processamento de Alto Desempenho – Prof. Mateus Raeder

Pseudo-paralelismo• Pseudo-paralelismo

– Vários processos compartilham o mesmo processador ao mesmo tempo

– Ilusão de paralelismo– Processo não controla quando perde a CPU!!

Processamento de Alto Desempenho – Prof. Mateus Raeder

Paralelismo Real• Existe a sobreposição dos processos

– Todos os processos executam simultaneamente

Processamento de Alto Desempenho – Prof. Mateus Raeder

Paralelismo Misto• Tanto o pseudo quanto o paralelismo real

acontecem

Processamento de Alto Desempenho – Prof. Mateus Raeder

Paralelismo x Concorrência• Paralelismo: termo utilizado normalmente para

falar de paralelismo real• Concorrência: dois ou mais processos executando

simultaneamente• Paralelismo é um tipo especial de concorrência

– Vários processos utilizando vários componentes de processamento

Processamento de Alto Desempenho – Prof. Mateus Raeder

Granulosidade• O que é uma tarefa?

– Nome dado às partes concorrentes do programa

• Existem diferentes tipos de granulosidade (ou granularidade)– Granulosidade: tamanho das tarefas

• Fina• Média• Grossa

– Relacionada com as operações e dados do programa

Processamento de Alto Desempenho – Prof. Mateus Raeder

Paralelismo• O que é uma tarefa paralela?

– Tarefas independentes umas das outras

• O que é um problema paralelizável?– Um programa que é passível de ser dividido em tarefas

paralelas

Processamento de Alto Desempenho – Prof. Mateus Raeder

Tipos de paralelismo• Como caracterizar a concorrência da aplicação?

– De que maneira a aplicação foi paralelizada?

• Paralelismo de tarefas– Executar diferentes atividades sobre diferentes dados– Distribuição das tarefas entre componentes de processamento

• Paralelismo de dados– Executar a mesma tarefa sobre diferentes partes dos mesmos

dados– Distribuição dos dados entre os componentes de

processamento

Processamento de Alto Desempenho – Prof. Mateus Raeder

Vantagens da concorrência• Usar eficientemente os recursos de hardware

disponíveis– Por exemplo, operações de I/O juntamente com cálculos

pela CPU

• Aumento do desempenho de determinados programas

• Alocar todas as CPUs sempre que possível

Processamento de Alto Desempenho – Prof. Mateus Raeder

Desvantagens da concorrência• Sincronização

– Dependência temporal• Uma tarefa depende do resultado da anterior

– Recursos compartilhados• Acesso concorrente gera inconsistência

• Escalonamento– Uso correto dos recursos– Nem sempre é papel do SO!!