SlideShare a Scribd company logo
1 of 23
Arquitetura de
computadores
Computação Paralela
Fernando Gomes
Marlon Victor
Ricardo Amorim
Thiago Domingos
O que é computação paralela?
Imagine que você precisa realizar um cálculo
muito extenso em pouquíssimo tempo. Para
realizar tal tarefa, você chama um grupo de
amigos e divide esse cálculo em partes, uma
para cada amigo. Depois de realizado o cálculo
de cada parte, você junta os resultados obtidos
para conseguir o resultado final desse calculo
extenso.
O que é computação paralela?
1+1
2+2
3+3
4+4
5+5
C
Á
L
C
U
L
O
E
X
T
E
N
S
O
DADOS
DIVIDIDOS
30
Dividir para Conquistar
O que é computação paralela?
■INFORMÁTICA EM SERIE
■Tradicionalmente, o software foi escrito para computação em série: Um problema é dividido em uma
série discreta de instruções
■As instruções são executadas sequencialmente uma após a outra
■Executado em um único processador
■Apenas uma instrução pode ser executada a qualquer momento no tempo
O que é computação paralela?
■No sentido mais simples, a computação paralela é o uso simultâneo de múltiplos recursos
computacionais para resolver um problema computacional: Um problema é dividido em partes
discretas que podem ser resolvidas simultaneamente.
■Cada parte é dividida em uma série de instruções.
■As instruções de cada peça executam simultaneamente em diferentes processadores.
■Um mecanismo geral de controle / coordenação é empregado
O conceito
O processo computacional deve ser capaz de:
• Ser dividido em peças discretas que podem ser resolvidas
simultaneamente;
• Executar várias instruções do programa a qualquer momento;
• Ser resolvido em menos tempo com vários recursos de computação do
que com um único recurso de computação.
Os recursos de computação são tipicamente:
• Um único computador com vários processadores / núcleos
• Um número arbitrário de tais computadores conectados por uma rede
Computadores paralelos
Praticamente todos os computadores autônomos hoje são paralelos a
partir de uma perspectiva de hardware: Várias unidades funcionais (cache
L1, cache L2, ramificação, prefetch, decodificação, ponto flutuante,
processamento gráfico (GPU), número inteiro, etc.)
Unidades / núcleos de execução múltipla
Múltiplos segmentos de hardware
As redes conectam múltiplos computadores autônomos (nós) para criar conjuntos de
computadores paralelos maiores.
Computadores paralelos
A maioria dos
grandes
computadores
paralelos do
mundo
(supercomputad
ores) são
clusters de
hardware
produzidos por
um punhado de
vendedores
(principalmente)
bem conhecidos
Por que usar a computação paralela?
GANHAR TEMPO E / OU
DINHEIRO: Em teoria, lançar
mais recursos em uma tarefa
reduzirá seu tempo até a
conclusão, com potencial de
redução de custos.
Computadores paralelos podem
ser construídos a partir de
componentes baratos e básicos.
FORNECER CONCORRÊNCIA:
Um único recurso de computação
só pode fazer uma coisa por
vez. Múltiplos recursos de
computação podem fazer muitas
coisas simultaneamente.
Exemplo: Redes colaborativas
fornecem um local global onde
pessoas de todo o mundo podem
se encontrar e realizar o trabalho
"praticamente".
SOLUÇÃO DE PROBLEMAS / MAIS COMPLEXOS: Muitos problemas são tão grandes e / ou
complexos que é impraticável ou impossível resolvê-los em um único computador,
especialmente com a memória limitada do computador.
Exemplo: "Grand Challenge Problems" ( pt.wikipedia.org/wiki/Grand_Challenge ) que requer
PetaFLOPS e PetaBytes de recursos de computação.
Exemplo: motores de pesquisa / banco de dados da Web que processam milhões de
transações a cada segundo
Cluster
Uma evolução da
computação paralela
Arquitetura CLUSTER
Cluster é um sistema distribuído de
computadores independentes e interligados
(computação de alto desempenho), cujo o
objetivo é suprir a necessidade de um grande
poder computacional com um conjunto de
computadores de forma transparente ao usuário.
Há uma enormidade de aplicações que só podem
ser atendidas satisfatoriamente com computação
de alto desempenho: sistemas meteorológicos,
ferramentas de mapeamento genético,
simuladores geotérmicos, programas de
renderização de imagens tridimensionais, entre
tantos outros.
A arquitetura CLUSTER
Desenvolvida na década de 60 pela
como uma forma de interligar grandes
mainframes, visando obter uma solução
comercialmente viável de paralelismo.
Nesta época o sistema HASP (Houston
Automated Spooling Program) da IBM e
seu sucessor o JES (Job Entry System)
proviam uma maneira de distribuir
tarefas nos mainframes interligados.
Existem vários tipos de CLUSTER
no entanto há alguns que são mais
conhecidos, como:
cluster de alto desempenho.
cluster de alta disponibilidade.
cluster para balanceamento de carga
cluster de alto desempenho.
Também conhecido como cluster de alta
performance, ele funciona permitindo
que ocorra uma grande carga de
processamento com um volume alto de
gigaflops, (flops - unidade de medida que serve para
mensurar a capacidade de processamento de um computador),
em computadores comuns e utilizando
sistema operacional gratuito, o que
diminui seu custo;
cluster de alta disponibilidade.
São clusters cujos sistemas conseguem
permanecer ativos por um longo
período de tempo e em plena condição
de uso; sendo assim, podemos dizer
que eles nunca param seu
funcionamento; além disso, conseguem
detectar erros se protegendo de
possíveis falhas;
cluster para balanceamento de carga.
Esse tipo de cluster tem como função
controlar a distribuição equilibrada do
processamento. Requer um monitoramento
constante na sua comunicação e em seus
mecanismos de redundância, pois se
ocorrer alguma falha, haverá uma
interrupção no seu funcionamento.
Teste em casa
Computação paralela utilizando
Raspberry pi
O Apache Hadoop é uma
Framework/Plataforma desenvolvida
em Java, para computação
distribuída, usada para
processamento de grandes
quantidades de informação (usando
modelos de programação simples)
Transforme o seu Raspberry PI em um cluster
Link da materia <https://pplware.sapo.pt/linux/transformar-os-seus-raspberry-pi-n-um-
cluster/>
Raspberry pi
Nos últimos 20 anos, as tendências
indicadas por redes cada vez mais
rápidas, sistemas distribuídos e
arquiteturas de computadores
multiprocessador (mesmo no nível
da área de trabalho) mostram
claramente que o paralelismo é o
futuro da computação .
Neste mesmo período, houve
um aumento de mais de 500,000x no
desempenho do supercomputador,
sem nenhum fim à vista.
A corrida já está para o Exascale
Computing!
Exaflop = 10 18 cálculos por
segundo
O FUTURO
Quem está usando computação paralela?
Ciência e Engenharia:
Historicamente, a computação
paralela foi considerada
como "o fim da computação", e tem
sido usada para
modelar problemas difíceis em
muitas áreas da ciência e
engenharia:
- Ambiente, Terra, Meio Ambiente
- Física aplicada, nuclear, partículas,
matéria condensada, alta pressão,
fusão, fotônica
- Biociência, Biotecnologia, Genética
- Química, Ciências Moleculares
- Geologia, sismologia
Industrial e Comercial:
Hoje, as aplicações comerciais
proporcionam uma força motriz igual
ou maior no desenvolvimento de
computadores mais rápidos. Essas
aplicações exigem o processamento
de grandes quantidades de dados de
maneiras sofisticadas. Por exemplo:
- "Dados grandes", bancos de dados,
mineração de dados
- Exploração de óleo
- Motores de busca na Web, serviços
de negócios baseados na web
- Imagem médica e diagnóstico
- Design farmacêutico
Fontes de pesquisa
Introdução
Disponivel em:
<https://www.youtube.com/watch?v
=wf0NCVrHFCk>
Pesquisado em: 27 de junho de
2017.
Computação
paralela
Disponivel em:
<https://computing.llnl.gov/tutorials/
parallel_comp/>
Pesquisado em: 27 de junho de
2017.
Cluster
Disponivel em:
<https://www.infowester.com/cluster
.php>
Pesquisado em: 27 de junho de
2017.
Cluster – alto
desempenho
Disponivel em:
<http://www.ic.unicamp.br/~ducatte/
mo401/1s2010/T2/107077-t2.pdf>
Pesquisado em: 27 de junho de
2017.
Teste em casa
Disponivel em:
<https://pplware.sapo.pt/linux/transf
ormar-os-seus-raspberry-pi-n-um-
cluster/>
Pesquisado em: 27 de junho de
2017.
Historia do
cluster
Disponivel em:
<https://pt.wikipedia.org/wiki/Cluster>
Pesquisado em: 27 de junho de 2017.
Obrigado a todos pela atenção!
FIM

More Related Content

What's hot

Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores AritméticosAula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores AritméticosMessias Batista
 
Aula1 e aula2 - Analise e Projeto de Sistemas
Aula1 e aula2 - Analise e Projeto de SistemasAula1 e aula2 - Analise e Projeto de Sistemas
Aula1 e aula2 - Analise e Projeto de SistemasGustavo Gonzalez
 
Processadores - CPU
Processadores - CPUProcessadores - CPU
Processadores - CPURoney Sousa
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à ProgramaçãoMario Sergio
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threadsSilvino Neto
 
Lógica de Programação - Algoritmos
Lógica de Programação - AlgoritmosLógica de Programação - Algoritmos
Lógica de Programação - AlgoritmosRoney Sousa
 
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Leinylson Fontinele
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Pepe Rocker
 
Arquitetura dos dispositivos móveis
Arquitetura dos dispositivos móveisArquitetura dos dispositivos móveis
Arquitetura dos dispositivos móveisAlexsander Fontes
 
Introdução a Linguagem de Programação C
Introdução a Linguagem de Programação CIntrodução a Linguagem de Programação C
Introdução a Linguagem de Programação CGercélia Ramos
 
Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4Scratch_TCC
 
Informática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadoresInformática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadoresJoeldson Costa Damasceno
 
Lógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetiçãoLógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetiçãoWesley R. Bezerra
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlgWillians Miyabara
 

What's hot (20)

Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores AritméticosAula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
 
Aula1 e aula2 - Analise e Projeto de Sistemas
Aula1 e aula2 - Analise e Projeto de SistemasAula1 e aula2 - Analise e Projeto de Sistemas
Aula1 e aula2 - Analise e Projeto de Sistemas
 
Processadores - CPU
Processadores - CPUProcessadores - CPU
Processadores - CPU
 
Tipos de Sistema operacional
Tipos de Sistema operacionalTipos de Sistema operacional
Tipos de Sistema operacional
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à Programação
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threads
 
Manutenção de computadores
Manutenção de computadoresManutenção de computadores
Manutenção de computadores
 
Lógica de Programação - Algoritmos
Lógica de Programação - AlgoritmosLógica de Programação - Algoritmos
Lógica de Programação - Algoritmos
 
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
 
Conceito de processos
Conceito de processosConceito de processos
Conceito de processos
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)
 
Arquitetura dos dispositivos móveis
Arquitetura dos dispositivos móveisArquitetura dos dispositivos móveis
Arquitetura dos dispositivos móveis
 
Introdução a Linguagem de Programação C
Introdução a Linguagem de Programação CIntrodução a Linguagem de Programação C
Introdução a Linguagem de Programação C
 
Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4
 
Informática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadoresInformática Básica - Aula 02 - A evolução e caracterização dos computadores
Informática Básica - Aula 02 - A evolução e caracterização dos computadores
 
Lógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetiçãoLógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetição
 
Aula 08 - Placa Mãe
Aula 08 - Placa MãeAula 08 - Placa Mãe
Aula 08 - Placa Mãe
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlg
 
1ª aula sistema operacional
1ª aula  sistema operacional1ª aula  sistema operacional
1ª aula sistema operacional
 

Similar to Computação paralela 2 cluster e grid

Research Group on High Performance Computing - MDCC/UFC - Fortaleza, Brazil
Research Group on High Performance Computing - MDCC/UFC - Fortaleza, BrazilResearch Group on High Performance Computing - MDCC/UFC - Fortaleza, Brazil
Research Group on High Performance Computing - MDCC/UFC - Fortaleza, BrazilHeron Carvalho
 
Tudo sobre virtualização de Desktop
Tudo sobre virtualização de DesktopTudo sobre virtualização de Desktop
Tudo sobre virtualização de DesktopScanSource Brasil
 
Sistemas Operacionais aula 01
Sistemas Operacionais aula 01Sistemas Operacionais aula 01
Sistemas Operacionais aula 01Diego Rodrigues
 
Tecnologia front end back-end
Tecnologia front end back-end Tecnologia front end back-end
Tecnologia front end back-end Andressa Silveira
 
Computação Paralela - Uma Abordagem Geral
Computação Paralela - Uma Abordagem GeralComputação Paralela - Uma Abordagem Geral
Computação Paralela - Uma Abordagem GeralIgor José F. Freitas
 
Introdução à Computação de Alto Desempenho - Parte I
Introdução à Computação de Alto Desempenho - Parte IIntrodução à Computação de Alto Desempenho - Parte I
Introdução à Computação de Alto Desempenho - Parte IVinícius Hax
 
Mapreduce - Conceitos e Aplicações
Mapreduce - Conceitos e AplicaçõesMapreduce - Conceitos e Aplicações
Mapreduce - Conceitos e AplicaçõesGuilherme Araújo
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
 
História dos Sistemas - 3a Semana de SI
História dos Sistemas - 3a Semana de SIHistória dos Sistemas - 3a Semana de SI
História dos Sistemas - 3a Semana de SILeo Lorieri
 
Big data para programadores convencionais
Big data para programadores convencionaisBig data para programadores convencionais
Big data para programadores convencionaisRoberto Oliveira
 
Linguagem c wellington telles - aula 01
Linguagem c   wellington telles - aula 01Linguagem c   wellington telles - aula 01
Linguagem c wellington telles - aula 01profwtelles
 
Plataformas cisc e risc
Plataformas cisc e riscPlataformas cisc e risc
Plataformas cisc e riscTiago
 
Hadoop - Mãos à massa! Qcon2014
Hadoop - Mãos à massa! Qcon2014Hadoop - Mãos à massa! Qcon2014
Hadoop - Mãos à massa! Qcon2014Thiago Santiago
 
Questoesde fso
Questoesde fsoQuestoesde fso
Questoesde fsopaulocsm
 
Conceitos de sistemas operacionais
Conceitos de sistemas operacionaisConceitos de sistemas operacionais
Conceitos de sistemas operacionaisAparicio Junior
 

Similar to Computação paralela 2 cluster e grid (20)

Apostila SO
Apostila SOApostila SO
Apostila SO
 
Virtualização de Desktop
Virtualização de DesktopVirtualização de Desktop
Virtualização de Desktop
 
Research Group on High Performance Computing - MDCC/UFC - Fortaleza, Brazil
Research Group on High Performance Computing - MDCC/UFC - Fortaleza, BrazilResearch Group on High Performance Computing - MDCC/UFC - Fortaleza, Brazil
Research Group on High Performance Computing - MDCC/UFC - Fortaleza, Brazil
 
Tudo sobre virtualização de Desktop
Tudo sobre virtualização de DesktopTudo sobre virtualização de Desktop
Tudo sobre virtualização de Desktop
 
Sistemas Operacionais aula 01
Sistemas Operacionais aula 01Sistemas Operacionais aula 01
Sistemas Operacionais aula 01
 
Tecnologia front end back-end
Tecnologia front end back-end Tecnologia front end back-end
Tecnologia front end back-end
 
Computação Paralela - Uma Abordagem Geral
Computação Paralela - Uma Abordagem GeralComputação Paralela - Uma Abordagem Geral
Computação Paralela - Uma Abordagem Geral
 
Introdução à Computação de Alto Desempenho - Parte I
Introdução à Computação de Alto Desempenho - Parte IIntrodução à Computação de Alto Desempenho - Parte I
Introdução à Computação de Alto Desempenho - Parte I
 
Mapreduce - Conceitos e Aplicações
Mapreduce - Conceitos e AplicaçõesMapreduce - Conceitos e Aplicações
Mapreduce - Conceitos e Aplicações
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
 
História dos Sistemas - 3a Semana de SI
História dos Sistemas - 3a Semana de SIHistória dos Sistemas - 3a Semana de SI
História dos Sistemas - 3a Semana de SI
 
Big data para programadores convencionais
Big data para programadores convencionaisBig data para programadores convencionais
Big data para programadores convencionais
 
Linguagem c wellington telles - aula 01
Linguagem c   wellington telles - aula 01Linguagem c   wellington telles - aula 01
Linguagem c wellington telles - aula 01
 
Computação de alta performance
Computação de alta performanceComputação de alta performance
Computação de alta performance
 
Plataformas cisc e risc
Plataformas cisc e riscPlataformas cisc e risc
Plataformas cisc e risc
 
Hadoop - Mãos à massa! Qcon2014
Hadoop - Mãos à massa! Qcon2014Hadoop - Mãos à massa! Qcon2014
Hadoop - Mãos à massa! Qcon2014
 
Questoesde fso
Questoesde fsoQuestoesde fso
Questoesde fso
 
30440951 informatica
30440951 informatica30440951 informatica
30440951 informatica
 
Conceitos de sistemas operacionais
Conceitos de sistemas operacionaisConceitos de sistemas operacionais
Conceitos de sistemas operacionais
 
AC nova-aula 1.pptx
AC nova-aula 1.pptxAC nova-aula 1.pptx
AC nova-aula 1.pptx
 

More from Fernando Gomes Chaves

Apresentação redes 1 - Redes sem fio, ADSL e TV Digital
Apresentação redes 1 - Redes sem fio, ADSL e TV DigitalApresentação redes 1 - Redes sem fio, ADSL e TV Digital
Apresentação redes 1 - Redes sem fio, ADSL e TV DigitalFernando Gomes Chaves
 
Engenharia de software categorias de software
Engenharia de software   categorias de softwareEngenharia de software   categorias de software
Engenharia de software categorias de softwareFernando Gomes Chaves
 
Trabalho qualidade de software sistemas de informação
Trabalho qualidade de software   sistemas de informaçãoTrabalho qualidade de software   sistemas de informação
Trabalho qualidade de software sistemas de informaçãoFernando Gomes Chaves
 
Sistemas da informação segurança da informação
Sistemas da informação   segurança da informaçãoSistemas da informação   segurança da informação
Sistemas da informação segurança da informaçãoFernando Gomes Chaves
 
Apresentaçao de psicologia Alfred Adler
Apresentaçao de psicologia   Alfred AdlerApresentaçao de psicologia   Alfred Adler
Apresentaçao de psicologia Alfred AdlerFernando Gomes Chaves
 
Apresentação proposta site hotel fazenda
Apresentação proposta site hotel fazendaApresentação proposta site hotel fazenda
Apresentação proposta site hotel fazendaFernando Gomes Chaves
 

More from Fernando Gomes Chaves (10)

Trabalho sistemas operacionais
Trabalho sistemas operacionaisTrabalho sistemas operacionais
Trabalho sistemas operacionais
 
Projeto de redes 2
Projeto de redes 2Projeto de redes 2
Projeto de redes 2
 
Apresentação solar brasil
Apresentação solar brasilApresentação solar brasil
Apresentação solar brasil
 
Apresentação redes 1 - Redes sem fio, ADSL e TV Digital
Apresentação redes 1 - Redes sem fio, ADSL e TV DigitalApresentação redes 1 - Redes sem fio, ADSL e TV Digital
Apresentação redes 1 - Redes sem fio, ADSL e TV Digital
 
Engenharia de software categorias de software
Engenharia de software   categorias de softwareEngenharia de software   categorias de software
Engenharia de software categorias de software
 
Trabalho qualidade de software sistemas de informação
Trabalho qualidade de software   sistemas de informaçãoTrabalho qualidade de software   sistemas de informação
Trabalho qualidade de software sistemas de informação
 
Sistemas da informação segurança da informação
Sistemas da informação   segurança da informaçãoSistemas da informação   segurança da informação
Sistemas da informação segurança da informação
 
Apresentaçao de psicologia Alfred Adler
Apresentaçao de psicologia   Alfred AdlerApresentaçao de psicologia   Alfred Adler
Apresentaçao de psicologia Alfred Adler
 
Apresentação proposta site hotel fazenda
Apresentação proposta site hotel fazendaApresentação proposta site hotel fazenda
Apresentação proposta site hotel fazenda
 
Economia digital
Economia digitalEconomia digital
Economia digital
 

Recently uploaded

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 

Recently uploaded (6)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 

Computação paralela 2 cluster e grid

  • 2. Computação Paralela Fernando Gomes Marlon Victor Ricardo Amorim Thiago Domingos
  • 3. O que é computação paralela? Imagine que você precisa realizar um cálculo muito extenso em pouquíssimo tempo. Para realizar tal tarefa, você chama um grupo de amigos e divide esse cálculo em partes, uma para cada amigo. Depois de realizado o cálculo de cada parte, você junta os resultados obtidos para conseguir o resultado final desse calculo extenso.
  • 4. O que é computação paralela? 1+1 2+2 3+3 4+4 5+5 C Á L C U L O E X T E N S O DADOS DIVIDIDOS 30 Dividir para Conquistar
  • 5. O que é computação paralela? ■INFORMÁTICA EM SERIE ■Tradicionalmente, o software foi escrito para computação em série: Um problema é dividido em uma série discreta de instruções ■As instruções são executadas sequencialmente uma após a outra ■Executado em um único processador ■Apenas uma instrução pode ser executada a qualquer momento no tempo
  • 6. O que é computação paralela? ■No sentido mais simples, a computação paralela é o uso simultâneo de múltiplos recursos computacionais para resolver um problema computacional: Um problema é dividido em partes discretas que podem ser resolvidas simultaneamente. ■Cada parte é dividida em uma série de instruções. ■As instruções de cada peça executam simultaneamente em diferentes processadores. ■Um mecanismo geral de controle / coordenação é empregado
  • 7. O conceito O processo computacional deve ser capaz de: • Ser dividido em peças discretas que podem ser resolvidas simultaneamente; • Executar várias instruções do programa a qualquer momento; • Ser resolvido em menos tempo com vários recursos de computação do que com um único recurso de computação. Os recursos de computação são tipicamente: • Um único computador com vários processadores / núcleos • Um número arbitrário de tais computadores conectados por uma rede
  • 8. Computadores paralelos Praticamente todos os computadores autônomos hoje são paralelos a partir de uma perspectiva de hardware: Várias unidades funcionais (cache L1, cache L2, ramificação, prefetch, decodificação, ponto flutuante, processamento gráfico (GPU), número inteiro, etc.) Unidades / núcleos de execução múltipla Múltiplos segmentos de hardware As redes conectam múltiplos computadores autônomos (nós) para criar conjuntos de computadores paralelos maiores.
  • 9. Computadores paralelos A maioria dos grandes computadores paralelos do mundo (supercomputad ores) são clusters de hardware produzidos por um punhado de vendedores (principalmente) bem conhecidos
  • 10. Por que usar a computação paralela? GANHAR TEMPO E / OU DINHEIRO: Em teoria, lançar mais recursos em uma tarefa reduzirá seu tempo até a conclusão, com potencial de redução de custos. Computadores paralelos podem ser construídos a partir de componentes baratos e básicos. FORNECER CONCORRÊNCIA: Um único recurso de computação só pode fazer uma coisa por vez. Múltiplos recursos de computação podem fazer muitas coisas simultaneamente. Exemplo: Redes colaborativas fornecem um local global onde pessoas de todo o mundo podem se encontrar e realizar o trabalho "praticamente". SOLUÇÃO DE PROBLEMAS / MAIS COMPLEXOS: Muitos problemas são tão grandes e / ou complexos que é impraticável ou impossível resolvê-los em um único computador, especialmente com a memória limitada do computador. Exemplo: "Grand Challenge Problems" ( pt.wikipedia.org/wiki/Grand_Challenge ) que requer PetaFLOPS e PetaBytes de recursos de computação. Exemplo: motores de pesquisa / banco de dados da Web que processam milhões de transações a cada segundo
  • 12. Arquitetura CLUSTER Cluster é um sistema distribuído de computadores independentes e interligados (computação de alto desempenho), cujo o objetivo é suprir a necessidade de um grande poder computacional com um conjunto de computadores de forma transparente ao usuário. Há uma enormidade de aplicações que só podem ser atendidas satisfatoriamente com computação de alto desempenho: sistemas meteorológicos, ferramentas de mapeamento genético, simuladores geotérmicos, programas de renderização de imagens tridimensionais, entre tantos outros.
  • 13. A arquitetura CLUSTER Desenvolvida na década de 60 pela como uma forma de interligar grandes mainframes, visando obter uma solução comercialmente viável de paralelismo. Nesta época o sistema HASP (Houston Automated Spooling Program) da IBM e seu sucessor o JES (Job Entry System) proviam uma maneira de distribuir tarefas nos mainframes interligados.
  • 14. Existem vários tipos de CLUSTER no entanto há alguns que são mais conhecidos, como: cluster de alto desempenho. cluster de alta disponibilidade. cluster para balanceamento de carga
  • 15. cluster de alto desempenho. Também conhecido como cluster de alta performance, ele funciona permitindo que ocorra uma grande carga de processamento com um volume alto de gigaflops, (flops - unidade de medida que serve para mensurar a capacidade de processamento de um computador), em computadores comuns e utilizando sistema operacional gratuito, o que diminui seu custo;
  • 16. cluster de alta disponibilidade. São clusters cujos sistemas conseguem permanecer ativos por um longo período de tempo e em plena condição de uso; sendo assim, podemos dizer que eles nunca param seu funcionamento; além disso, conseguem detectar erros se protegendo de possíveis falhas;
  • 17. cluster para balanceamento de carga. Esse tipo de cluster tem como função controlar a distribuição equilibrada do processamento. Requer um monitoramento constante na sua comunicação e em seus mecanismos de redundância, pois se ocorrer alguma falha, haverá uma interrupção no seu funcionamento.
  • 18. Teste em casa Computação paralela utilizando Raspberry pi
  • 19. O Apache Hadoop é uma Framework/Plataforma desenvolvida em Java, para computação distribuída, usada para processamento de grandes quantidades de informação (usando modelos de programação simples) Transforme o seu Raspberry PI em um cluster Link da materia <https://pplware.sapo.pt/linux/transformar-os-seus-raspberry-pi-n-um- cluster/> Raspberry pi
  • 20. Nos últimos 20 anos, as tendências indicadas por redes cada vez mais rápidas, sistemas distribuídos e arquiteturas de computadores multiprocessador (mesmo no nível da área de trabalho) mostram claramente que o paralelismo é o futuro da computação . Neste mesmo período, houve um aumento de mais de 500,000x no desempenho do supercomputador, sem nenhum fim à vista. A corrida já está para o Exascale Computing! Exaflop = 10 18 cálculos por segundo O FUTURO
  • 21. Quem está usando computação paralela? Ciência e Engenharia: Historicamente, a computação paralela foi considerada como "o fim da computação", e tem sido usada para modelar problemas difíceis em muitas áreas da ciência e engenharia: - Ambiente, Terra, Meio Ambiente - Física aplicada, nuclear, partículas, matéria condensada, alta pressão, fusão, fotônica - Biociência, Biotecnologia, Genética - Química, Ciências Moleculares - Geologia, sismologia Industrial e Comercial: Hoje, as aplicações comerciais proporcionam uma força motriz igual ou maior no desenvolvimento de computadores mais rápidos. Essas aplicações exigem o processamento de grandes quantidades de dados de maneiras sofisticadas. Por exemplo: - "Dados grandes", bancos de dados, mineração de dados - Exploração de óleo - Motores de busca na Web, serviços de negócios baseados na web - Imagem médica e diagnóstico - Design farmacêutico
  • 22. Fontes de pesquisa Introdução Disponivel em: <https://www.youtube.com/watch?v =wf0NCVrHFCk> Pesquisado em: 27 de junho de 2017. Computação paralela Disponivel em: <https://computing.llnl.gov/tutorials/ parallel_comp/> Pesquisado em: 27 de junho de 2017. Cluster Disponivel em: <https://www.infowester.com/cluster .php> Pesquisado em: 27 de junho de 2017. Cluster – alto desempenho Disponivel em: <http://www.ic.unicamp.br/~ducatte/ mo401/1s2010/T2/107077-t2.pdf> Pesquisado em: 27 de junho de 2017. Teste em casa Disponivel em: <https://pplware.sapo.pt/linux/transf ormar-os-seus-raspberry-pi-n-um- cluster/> Pesquisado em: 27 de junho de 2017. Historia do cluster Disponivel em: <https://pt.wikipedia.org/wiki/Cluster> Pesquisado em: 27 de junho de 2017.
  • 23. Obrigado a todos pela atenção! FIM