Você está na página 1de 24

professor (a)

Luciani Vieira

disciplina
Arquitetura de
Computadores
AGENDA

Arquiteturas paralelas e distribuídas

Conceito e características
Arquiteturas multiprocessadas: SIMD, MIMD, SPMD, MPMD
Arquiteturas de cluster: conceito e funcionamento
● Slide 1: Introdução Saudação e apresentação do tema Objetivos da aula
● Slide 2: Arquiteturas Paralelas e Distribuídas Definição de arquiteturas paralelas e distribuídas Características das arquiteturas
paralelas e distribuídas
● Slide 3: Arquiteturas Multiprocessadas Definição de arquiteturas multiprocessadas Classificação das arquiteturas
multiprocessadas Single Instruction Multiple Data (SIMD) Multiple Instruction Multiple Data (MIMD) Single Program Multiple
Data (SPMD) Multiple Program Multiple Data (MPMD)
● Slide 4: Arquiteturas de Cluster Definição de arquiteturas de cluster Características das arquiteturas de cluster Funcionamento
das arquiteturas de cluster
● Slide 5: Vantagens e Desvantagens das Arquiteturas Paralelas e Distribuídas Vantagens das arquiteturas paralelas e
distribuídas Desvantagens das arquiteturas paralelas e distribuídas
● Slide 6: Exemplos de Arquiteturas Paralelas e Distribuídas Apresentação de exemplos de arquiteturas paralelas e distribuídas
bem-sucedidas Análise de boas práticas em arquiteturas paralelas e distribuídas
● Slide 7: Desafios das Arquiteturas Paralelas e Distribuídas Problemas mais comuns em arquiteturas paralelas e distribuídas
Como evitar problemas nas arquiteturas paralelas e distribuídas Importância da avaliação de arquiteturas paralelas e
distribuídas
● Slide 8: Tendências em Arquiteturas Paralelas e Distribuídas Novas tecnologias em arquiteturas paralelas e distribuídas Futuro
das arquiteturas paralelas e distribuídas
● Slide 9: Conclusão Recapitulação dos conceitos abordados Importância das arquiteturas paralelas e distribuídas para o
desenvolvimento de sistemas Encerramento e agradecimentos.
Arquiteturas paralelas e distribuídas
● Introdução:
• Explicação do conceito de arquiteturas paralelas e distribuídas
• Importância dessas arquiteturas na computação moderna
● Características das arquiteturas paralelas:
• Explicação das principais características, como compartilhamento de recursos, divisão de tarefas, etc.
● Características das arquiteturas distribuídas:
• Explicação das principais características, como distribuição geográfica dos recursos, escalabilidade,
tolerância a falhas, etc.
● Exemplos de arquiteturas multiprocessadas:
• Explicação dos tipos SIMD, MIMD, SPMD e MPMD
• Descrição de exemplos de sistemas que utilizam cada tipo de arquitetura
● Arquiteturas de cluster:
• Conceito de cluster e como ele se diferencia de outras arquiteturas distribuídas
• Funcionamento básico de um cluster
• Exemplos de sistemas que utilizam arquiteturas de cluster
Arquiteturas paralelas e distribuídas

● O que são arquiteturas paralelas e distribuídas?

○ As arquiteturas paralelas e distribuídas são modelos de computação que visam melhorar o


desempenho e a eficiência dos sistemas, dividindo o processamento em várias unidades que
trabalham simultaneamente.
Arquiteturas paralelas e distribuídas
● Por que elas são importantes na computação moderna?
○ Elas são importantes na computação moderna porque possibilitam a execução de tarefas complexas em
menos tempo, além de permitir a manipulação de grandes volumes de dados.

○ Isso é especialmente útil em áreas como a ciência de dados, inteligência artificial, processamento de
imagens e simulações, onde o processamento paralelo pode reduzir significativamente o tempo necessário
para obter resultados.

○ As arquiteturas distribuídas também são importantes porque permitem a criação de sistemas escaláveis e
tolerantes a falhas, uma vez que os recursos podem estar geograficamente dispersos.

○ Dessa forma, se um componente falhar, o sistema ainda pode continuar funcionando, já que outras
unidades podem assumir a carga de trabalho.

○ Isso é especialmente útil em aplicações que exigem alta disponibilidade, como serviços de nuvem e
sistemas de missão crítica.
Arquiteturas paralelas e distribuídas
● Características das arquiteturas paralelas:
• Compartilhamento de recursos: várias tarefas podem usar os mesmos recursos ao mesmo tempo;
• Divisão de tarefas: tarefas são divididas em partes menores que podem ser processadas
simultaneamente;
• Aumento da velocidade de processamento: mais tarefas são realizadas em menos tempo;
• Uso eficiente dos recursos: recursos ociosos são aproveitados para processar outras tarefas.

● Características das arquiteturas distribuídas:


• Distribuição geográfica dos recursos: recursos estão localizados em diferentes lugares geográficos e são
conectados por meio de redes;
• Escalabilidade: é possível adicionar ou remover recursos de acordo com a demanda;
• Tolerância a falhas: falhas em um recurso não afetam a execução de outras tarefas;
• Compartilhamento de recursos: recursos podem ser compartilhados entre diferentes tarefas em
diferentes locais.

● [Imagem ilustrativa de uma arquitetura paralela/distribuída]


Exemplo de arquitetura paralela de memória
compartilhada
Exemplo de arquitetura distribuida
Principais componentes de arquiteturas paralelas e
distribuídas
● Componentes:
• Usuários:
• São os responsáveis por utilizar os recursos oferecidos pelas arquiteturas paralelas e
distribuídas.
• Interfaces:
• São os pontos de contato entre o usuário e a arquitetura paralela ou distribuída.
• Elas devem ser intuitivas e oferecer um conjunto de recursos adequados para atender as
necessidades do usuário.
• Processadores:
• São as unidades de processamento que executam as tarefas atribuídas pela arquitetura.
• Em uma arquitetura paralela, é comum o uso de múltiplos processadores trabalhando em
conjunto para executar uma tarefa, enquanto em uma arquitetura distribuída, os
processadores podem estar localizados em diferentes máquinas.
Principais componentes de arquiteturas paralelas e
distribuídas
● Componentes:
• Memória:
• É o componente responsável por armazenar as informações necessárias para a execução
das tarefas.
• Em uma arquitetura paralela, é importante que os processadores tenham acesso rápido à
memória compartilhada, enquanto em uma arquitetura distribuída, é necessário que os
dados sejam transferidos pela rede.
• Rede:
• É o componente que interconecta os processadores e a memória em uma arquitetura
distribuída, permitindo a comunicação entre eles.
• O desempenho da rede é fundamental para o desempenho da arquitetura distribuída.
Principais componentes de arquiteturas paralelas e
distribuídas
● Exemplo:
● Em uma arquitetura paralela, uma tarefa pode ser dividida em várias sub-
tarefas menores, que são atribuídas a diferentes processadores para que
possam ser executadas simultaneamente. Cada processador pode acessar a
memória compartilhada para obter as informações necessárias para
executar a tarefa.
● Já em uma arquitetura distribuída, os processadores podem estar
localizados em diferentes máquinas e se comunicar por meio da rede. Nesse
caso, é necessário garantir que a transferência de dados pela rede seja
rápida o suficiente para não comprometer o desempenho da arquitetura.
Classificação das arquiteturas multiprocessadas

● Single Instruction Multiple Data (SIMD)


○ é caracterizada por um único processador que executa a mesma instrução em múltiplos
dados simultaneamente. Um exemplo de aplicação dessa arquitetura é o processamento de
imagens em tempo real.

● Multiple Instruction Multiple Data (MIMD)


○ é caracterizada por múltiplos processadores que executam instruções independentes e
diferentes. Um exemplo de aplicação dessa arquitetura é a simulação de sistemas físicos
complexos.
Classificação das arquiteturas multiprocessadas

● Single Program Multiple Data (SPMD)


○ é caracterizada por múltiplos processadores que executam o mesmo programa, porém com
diferentes conjuntos de dados. Essa arquitetura é comum em sistemas de computação
distribuída e em clusters.

● Multiple Program Multiple Data (MPMD)


○ é caracterizada por múltiplos processadores que executam programas diferentes em
diferentes conjuntos de dados. Essa arquitetura é comum em sistemas de computação
distribuída, como em redes de servidores.
Exemplo de arquitetura multiprocessada:
❖ Uma fábrica de automóveis possui uma linha de montagem em
que várias tarefas são realizadas simultaneamente por diferentes
processadores.
❖ Cada processador é responsável por uma tarefa específica, como
instalar as rodas, o motor, os bancos, etc.
❖ Todos esses processadores trabalham em conjunto para concluir a
montagem do carro o mais rápido possível.
❖ No caso desta fábrica de automóveis, podemos classificar a
arquitetura como MIMD (Multiple Instruction Multiple Data), pois
cada processador executa instruções diferentes, trabalhando com
diferentes conjuntos de dados.
Vantagens e Desvantagens das Arquiteturas Paralelas e
Distribuídas
● Vantagens das arquiteturas paralelas e distribuídas:

• Melhor desempenho em aplicações que demandam processamento intensivo

• Possibilidade de dividir tarefas em sub-tarefas menores para acelerar o


processamento

• Maior escalabilidade e possibilidade de adicionar mais recursos conforme a


demanda aumenta

• Maior disponibilidade e tolerância a falhas, pois a distribuição dos recursos


garante que um falha não afete todo o sistema
Vantagens e Desvantagens das Arquiteturas Paralelas e
Distribuídas
● Desvantagens das arquiteturas paralelas e distribuídas:

• Maior complexidade no desenvolvimento e gerenciamento do sistema

• Maior custo, pois é necessário adquirir e manter os recursos distribuídos

• Necessidade de garantir a consistência dos dados distribuídos entre os nós


do sistema

• Necessidade de lidar com problemas de comunicação entre os nós, como


latência e falhas de rede.
Exemplos de Arquiteturas Paralelas e Distribuídas

● Um exemplo de arquitetura paralela é o processamento distribuído de big


data. Empresas como o Google e o Facebook utilizam arquiteturas paralelas
para processar grandes quantidades de dados de maneira eficiente.
○ Essas empresas usam clusters de servidores para executar tarefas em paralelo, dividindo o
processamento entre vários nós do cluster.

● Já um exemplo de arquitetura distribuída é a computação em nuvem.


Empresas como a Amazon e a Microsoft oferecem serviços de computação
em nuvem, que permitem aos usuários executar aplicativos e armazenar
dados em servidores remotos.
○ Esses servidores são distribuídos geograficamente, permitindo que os usuários acessem
recursos de qualquer lugar do mundo.
Exemplos de Arquiteturas Paralelas e Distribuídas

● Na análise de boas práticas, podemos destacar a importância de projetar


sistemas escaláveis e tolerantes a falhas, que possam lidar com grandes
volumes de dados e possíveis interrupções de serviço.

● Também é importante considerar a segurança e a privacidade dos dados,


garantindo que as informações sejam protegidas contra acesso não
autorizado e ataques cibernéticos.

● Além disso, a eficiência energética e o uso de tecnologias sustentáveis


devem ser considerados para reduzir o impacto ambiental das arquiteturas
paralelas e distribuídas.
Desafios das Arquiteturas Paralelas e Distribuídas

• Problemas mais comuns em arquiteturas paralelas e distribuídas:

• Coordenação e sincronização entre os processadores ou nós

• Divisão adequada de tarefas entre processadores ou nós

• Sobrecarga de comunicação entre processadores ou nós

• Conflitos de acesso aos recursos compartilhados


Desafios das Arquiteturas Paralelas e Distribuídas

• Como evitar problemas nas arquiteturas paralelas e distribuídas:

• Utilização de algoritmos e estratégias adequadas para a divisão de tarefas


e coordenação entre processadores ou nós

• Balanceamento de carga para evitar sobrecarga de processamento ou


comunicação

• Utilização de protocolos de comunicação eficientes e seguros

• Implementação de mecanismos de controle de acesso aos recursos


compartilhados
Desafios das Arquiteturas Paralelas e Distribuídas

• Importância da avaliação de arquiteturas paralelas e distribuídas:

• Identificação de problemas e gargalos na arquitetura

• Otimização do desempenho da arquitetura

• Garantia da confiabilidade e segurança do sistema.


● Casos de arquiteturas paralelas e distribuídas enfrentaram problemas de
coordenação inadequada ou sobrecarga de comunicação, como o projeto do
supercomputador japonês K Computer.

● Utilização de algoritmos e protocolos de comunicação adequados, bem


como a implementação de mecanismos de controle de acesso, podem
ajudar a evitar esses problemas e melhorar o desempenho da arquitetura.

● Como exemplo de sucesso, pode-se citar a arquitetura distribuída do


Google, que permite a execução eficiente de tarefas em larga escala em
milhões de servidores em todo o mundo.

Você também pode gostar