15.10.2013 Views

trabalho sobre proce.. - Filosofar Sempre!!!!

trabalho sobre proce.. - Filosofar Sempre!!!!

trabalho sobre proce.. - Filosofar Sempre!!!!

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

) Pode não ser possível buscar nova instrução antes da execução completa da anterior.<br />

Em uma instrução de desvio, o endereço de desvio só é conhecido após a execução<br />

da operação e, nesse caso, não há como "buscar" uma nova instrução durante o<br />

estágio de execução. Assim, o estágio de busca não foi superposto ao de execução, e<br />

o de execução da instrução seguinte também vai acontecer somente após sua busca.<br />

Ou seja, nada se ganhou em termos de tempo.<br />

Para obter produtividade e rapidez do sistema, deve-se construir a UCP com<br />

mais estágios. Quanto maior a quantidade de estágios, mais superposição e aumento de<br />

velocidade. É importante ressaltar que o tempo de duração de cada estágio deve ser o<br />

mais semelhante possível, de modo que um estágio, não espere o término do outro para<br />

iniciar a execução seguinte.<br />

1.13 EXECUÇÃO PARALELA DE INSTRUÇÕES<br />

Desde os primórdios da computação, os projetistas tentam construir máquinas<br />

mais rápidas. Até certo ponto, as máquinas podem ser aceleradas simplesmente<br />

aumentando a velocidade do hardware. Infelizmente computadores rápidos produzem<br />

mais calor que os lentos e a montagem do computador em um volume pequeno torna<br />

difícil a dissipação desse calor. Os supercomputadores são, muitas vezes, submersos em<br />

fréon líquido, um refrigerante, para retirar o calor o mais rápido possível. Considerando<br />

tudo isso, produzir computadores cada vez mais rápidos está-se tornando cada vez mais<br />

difícil, e também cada vez mais caro.<br />

Entretanto, existe outra abordagem. Em vez de uma única CPU de alta<br />

velocidade, é possível construir uma máquina com muitas ALUs mais lentas (e mais<br />

baratas) ou mesmo CPUs completas para se obter o mesmo poder computacional a um<br />

custo menor.<br />

As máquinas paralelas podem ser divididas em três categorias (Flynn IN:<br />

Monteiro (1995)), baseando-se no número de fluxos de instruções e de dados que elas<br />

têm:<br />

1. SISD - Single Instruction, Single Data<br />

Fluxo único de instruções e de dados.<br />

2. SIMD - Single Instruction, Multiple Data<br />

Fluxo único de instruções e múltiplo de dados.<br />

3. MIMD - Multiple Instruction, Multiple Data<br />

Fluxo múltiplo de instruções e de dados.<br />

A máquina tradicional de von Neumman é SISD. Ela tem apenas um fluxo de<br />

instruções (i. é, um programa), executado por uma única CPU, e uma memória<br />

conectando seus dados. A primeira instrução é buscada da memória e então executada.<br />

A seguir, a Segunda instrução é buscada e executada.<br />

Máquinas SIMD, ao contrário, operam um múltiplos conjuntos de dados em<br />

paralelo. Uma aplicação típica para uma máquina SIMD é a previsão do tempo. Imagine<br />

o cálculo da temperatura média diária a partir de 24 médias horárias para muitos locais.<br />

Para cada local, exatamente o mesmo cálculo precisa ser feito, porém com dados<br />

diferentes.<br />

A terceira categoria de Flynn é a MIMD, na qual CPUs diferentes executam<br />

programas diferentes, às vezes compartilhando alguma memória em comum. Por<br />

exemplo, no sistema de reserva de passagens aéreas, reservas simultâneas múltiplas não<br />

15

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!