1. http://informaticaentretenimento.blogspot.com/
CEP- CENTRO DE EDUCAÇÃO PROFISSIONAL DE ITAJUBÁ
TÉCNICO EM INFORMÁTICA
Turma: V2I
Verônica Veiga nº:17
Sistema Operacional
Arquitetura paralela
Software paralelo
Trabalho apresentado na disciplina:
De Sistema Operacional. Do Profº. :
Mário. No curso técnico em infor-
mática. Do CEP - Centro de Educa-
ção Profissional de Itajubá.
AGOSTO DE 2011
ITAJUBÁ-MG
2. ARQUITETURA PARALELA ou COMPUTAÇÃO PARALELA
A computação paralela é caracterizada pelo uso de várias unidades de
processamento ou processadores para executar uma computação de forma mais rápida. É
baseada no fato de que o processo de resolução de um problema pode ser divido em
tarefas menores, que podem ser realizadas simultaneamente através de algum tipo de
coordenação. O conceito foi originalmente introduzido no CDC 6600 em 1964 pela CDC
(Controle Data Corporation).
MODELOS DE COMPUTAÇÃO PARALELA
Os modelos de arquitetura de computadores são classificados pelo fluxo de
instruções e dados que se apresentam. Essa classificação é definida como taxonomia de
Flynn. Ela fica divida em quatro categorias: SISD, SIMD, MISD e MIMD. A seguir será
descrito mais detalhadamente essas quatro categorias.
SISD (SINGLE INSTRUCTION SINGLE DATA)
Conhecido como fluxo único de instruções sobre um único conjunto de dados é o caso
das máquinas convencionais com uma CPU. Essa arquitetura é conhecida também como
Von Neumann. A Figura 1 demonstra essa arquitetura SISD.
Figura 1 - Arquitetura SISD (UFV, 2008)
SIMD (SINGLE INSTRUCTION STREM MULTIPLE DATA STREAM)
Corresponde ao caso das arquiteturas vetoriais onde a mesma operação é executada
sobre múltiplos operandos. A Figura 2 demonstra essa arquitetura SIMD.
http://informaticaentretenimento.blogspot.com/
3. MISD (MULTIPLE INSTRUCTION STREAM SINGLE DATA STREAM)
Um pipeline de processadores seria um caso aonde os dados vão sendo processados e
passados para o processador seguinte. A proposta de implementação que mais se
aproxima desta categoria é a da máquina de fluxo de dados. A Figura 3 demonstra essa
arquitetura MISD.
MIMD (MULTIPLE INSTRUCTION STREAM MULTIPLE DATA STREAM)
Os multiprocessadores são um caso onde várias instruções podem ser executadas ao
mesmo tempo em unidades de processamento diferentes controladas por unidades de
controle independentes (uma para cada unidade de processamento). A Figura 4 demonstra
essa arquitetura MIMD.
http://informaticaentretenimento.blogspot.com/
4. APLICAÇÃO DO USO DA ARQUITETURA PARALELA
PROCESSADORES VETORIAIS
Processadores vetoriais ou processamento vetorial é definido como aplicação de
operações aritméticas/lógicas sobre vetores, ao invés de operações sobre pares de dados
ou dados escalares.
Ela possui as seguintes características: reduz o custo de manutenção de estruturas de
controle para laços de processamento; reduz conflitos de acesso à memória; pode ser
aplicado juntamente com conceitos de pipeline; em geral tem um aumento de desempenho
da ordem de 10 a 20 vezes quando comparado com máquinas escalares; aumenta os
custos de hardware; aumenta os custos de compilação do código (vetorização). A seguir
na Figura 6, demonstra a arquitetura dos processadores vetoriais (HOCHULI; GENARI,
2008).
MULTIPROCESSADORES SIMÉTRICOS
5. Estes ambientes são conhecidos como arquiteturas de compartilhamento total, são
caracterizadas por até dezenas de processadores compartilhando os mesmos recursos
computacionais e rodando um único sistema operacional. Os processadores são
considerados simétricos porque têm os mesmos custos para acesso à memória principal.
A utilização de SMP é mais popular do que se imagina. Este tipo de máquina é
encontrado facilmente em grande parte das organizações de hoje e também vem ganhando
espaço em áreas menores, reflexo da redução de custos destes equipamentos.
Um problema desta arquitetura é sua escalabilidade, pois com o aumento do número
de processadores a taxa de colisão de acesso à memória também cresce, sendo
necessário a utilização de soluções de memórias de cache e globais, que serão vistos à
frente. A seguir na Figura 7 demonstra a arquitetura dos multiprocessadores simétricos
(GOVERNO ELETRONICO, 2008).
MÁQUINAS MACIÇAMENTE PARALELAS
Como o próprio nome já diz, essas máquinas almejam o alto desempenho através da
utilização de um grande número de processadores comerciais, os quais, devido ao fator do
custo, acabam sendo processadores de baixo ou médio poder computacional.
Cada nó possui uma memória local com um espaço de endereçamento próprio. Assim
cada nó só tem acesso a sua própria memória, o que a caracteriza como uma máquina
NORMA. Assim, a comunicação entre as máquinas é feita através de troca de mensagens.
A seguir na Figura 8 demonstra a arquitetura das máquinas maciçamente paralelas
(OMÊNA, 2008).
http://informaticaentretenimento.blogspot.com/
6. Figura 8 – Máquinas Maciçamente Paralelas (CAVALHEIRO, 2008)
MÁQUINAS COM MEMÓRIA COMPARTILHADA DISTRIBUÍDA
São sistemas que apesar das memórias estarem fisicamente separada, todos os
processadores podem endereçar as memórias de todos os nós devido ao fato de que foi
implementado um espaço único de endereçamento (que pode ter sido feita tanto em
hardware como em software). A seguir na Figura 9 demonstra a arquitetura das Máquinas
com memória compartilhada distribuída (CAVALHEIRO, 2008).
Figura 9 – Máquinas com memória compartilhada distribuída (CAVALHEIRO, 2008)
REDE DE ESTAÇÕES DE TRABALHO
Basicamente as máquinas NOW utilizam uma rede local (normalmente Ethernet ou
ATM), já existente, para a execução de aplicações paralelas. Pois a rede local pode ser
vista como uma máquina paralela em que vários processadores, com suas memórias
locais (estações de trabalho), é interligado por uma rede, o que a torna uma máquina
NORMA de custo quase nulo.
A diferença da NOW para as MPP é na hierarquia de barramento utilizada nas estações,
por possuir um disco local (DL) nos nós e na rede de interconexão. Essas diferenças vêm
7. do fato de que a rede local ter sido planeja para um tipo diferente de aplicações paralelas
(compartilhar arquivos e acessar periféricos remotos, como a impressora).
Uma das dificuldades encontrada nessa troca de função é a rede de interconexão.
Redes como Ethernet e ATM não são otimizadas para aplicações paralelas, que gera uma
alta latência nas operações, o que compromete o desempenho da máquina como um todo.
A seguir na Figura 10 demonstra a arquitetura das Máquinas com memória compartilhada
distribuída (CAVALHEIRO, 2008).
Software para Processamento Paralelo
Processamento Paralelo é a ligação de vários computadores para realizar uma tarefa,
tecnicamente ,é um sistema de inter-conexão de vários nós de processamento, de maneira
que um processo de grande consumo, seja executado no nó mais disponível ou mesmo
subdividido por vários nós”. O Processamento Paralelo distribui as tarefas para cada
processador envolvido nesta interconexão de nós. O objetivo de um sistema de
Processamento Paralelo é obter agilidade, ganho de tempo na realização de uma grande
tarefa no qual será feita uma divisão na distribuição das tarefas para cada nó. É importante
ressaltar que, o Processamento Paralelo nada mais é que uma rede de vários
computadores interconectados, utilizada em diferentes tipos de topologia a qual permite
adicionar ou desfazer a conexão com um dos nós, logicamente a retirada de um dos nós
ocorre quando há danos ou interferências. A vantagem de usar um processamento
Paralelo é obter um alto desempenho em tarefas que são consideradas pesadas na
realização de computadores individuais.
(Figura 1: Ilustração de nós em Processamento Paralelo – Wikipédia)
http://informaticaentretenimento.blogspot.com/
8. Funcionamento do Processo Paralelo
Em uma rede na qual trabalha usando sistema de Processamento Paralelo é
permitido a instalação de um único tipo de Sistema Operacional, sendo assim se em um
computador for instalado o Linux, então será necessário que todos demais computadores
operem com o mesmo software, [2]isto porque existe particularidades em cada sistema
operacional que poderiam impedir o bom funcionamento do cluster. O software instalado
terá a função:
• Detectar erros e defeitos;
• Oferecer meios de reparos;
• Realizar a distribuição do processamento.
(Figura 2: Arquitetura de um Processamento Paralelo)
http://informaticaentretenimento.blogspot.com/
9. O computador principal é chamado de “Gerente de Tarefas”, que tem a função de
distribuir as tarefas para os nós ou nodos, que por sua vez processam as informações e o
resultado obtido retorna para o “Gerente de tarefas”.
Os três tipos de Processamento Paralelo
São três os tipos de processamento Paralelo, com Swar (Simd Withn a Register),
SMP (Symetric Multi Processor) ou com cluster Beowulf.
Swar (Simd Withn a Register)
Trabalha com programa de baixo nível; Usa processador MMX; Trabalha com apenas
um processador.
SMP (Symetric Multi Processor)
São computadores com mais de um processador em uma mesma placa mãe;
Compartilham o mesmo BUS e a mesma memória. (Figura 3: Arquitetura de Processamento
Paralelo SMP)
http://informaticaentretenimento.blogspot.com/
10. 1
Processamento Paralelo com cluster Beowulf
Esse modelo de processamento com Beowulf é caracterizado pelo agrupamento de
vários computadores individuais denominados “nós escravos” sendo gerenciados pelo
computador
Funcionamento
Ocorre através da instalação de um conjunto de computadores sem teclado, mouse
e monitor, conectados em uma rede por meio de Switch e uma Linguagem de instruções
que fará a troca de dados, rodando em uma plataforma GNU/Linux, conectados a um
servidor que será o gerenciador que irá distribuir tarefas, conforme ilustra figura abaixo.
(Figura 4: Arquitetura de Processamento Paralelo)
http://informaticaentretenimento.blogspot.com/
1
11. GNU/Linux
O Linux é a plataforma de sistema Operacional mais utilizada, justamente porque
contem ferramentas que permitem a alteração e adaptação do Kernel para melhor
desempenho nas atividades e aplicações que deverá desenvolver. (Figura 5: Plataforma
Linux )
As vantagens:
• Capacidade de processamento de grandes tarefas;
• Agilidade no processamento;
• Bom desempenho e performance nas atividades;
• Baixo custo (utilização de hardware popular e software aberto).
Serviços realizados pelo Processamento Paralelo Beowulf
• Para computação cientifica ou análises financeiras;
• Na indústria cinematográfica para renderização de gráficos de altíssima qualidade e
animações Ex: [3]Titanic, onde 105 computadores montados em uma rede local de alta
velocidade, equipados com sistema operacional gratuito (Linux),utilizados para realizar
renderização das imagens.
• [4] apresenta um sistema de processamento Beowulf realizado pela IBM, cada um
contendo 2 processadores, 512 MB de RAM e uma interface de rede gigabit Ethernet,
similares a um PC doméstico. Esses módulos foram agrupados em racks (chamados de
nós), cada um com 512 racks, interligados por uma complexa malha de cabos de rede,
rodando um software próprio de gerenciamento. (conforme figura 6). (Figura 6:
Processamento Paralelo Beowolf)
http://informaticaentretenimento.blogspot.com/
12. Fonte:
• http://knol.google.com/k/arquitetura-paralela-ou-computa%C3%A7%C3%A3o-paralela# 18/08/2011
• http://caim.hd1.com.br/fenixcont.html 23/08/2011
Acesse o blog abaixo: E seja bem vindo!
Temos curso online
http://informaticaentretenimento.blogspot.com/