SlideShare uma empresa Scribd logo
1 de 11
Baixar para ler offline
PAARTech
Multiprocessamento
em tempo real
Paralelismo com Haskell
Paralelismo é aumentar a
velocidade de um programa
usando múltiplos
processadores.
Fonte: http://www.haskell.org/haskellwiki/Parallelism
Paralelismo com mais rigor
Conjunto de técnicas de
programação e de hardware
permitindo a execução
simultânea de instruções
independentes em
processadores diferentes.
-- Guy Moebs.
Fonte: Laboratório de Matemática Jean Leray.
Universidade de Nantes
Paralelismo & concorrência
Há duas maneiras de se obter
paralelismo em Haskell:
● Paralelismo puro: pode ser usado
para acelerar partes do programa que
não lidam com E/S;
Paralelismo & concorrência
Há duas maneiras de se obter
paralelismo em Haskell:
● Paralelismo puro: pode ser usado
para acelerar partes do programa que
não lidam com E/S;
● Concorrência: que pode ser usada
para paralelizar operações de E/S.
Vantagens do paralelismo puro
Garantidamente determinístico
Não há condições de corrida
nem deadlocks
Regra de ouro
Sempre que puder use
paralelismo puro; quando não
puder: concorrência.
Paralelismo em C: Cilk
●
Professor Charles E. Leiserson no MIT;
●
Provê à linguagem C programação
multithread
●
Última versão oficial pelo MIT: 5.4.6
●
Intel se junta aos desenvolvedores para
avançar nesta tecnologia: Cilk Plus
Paralelismo em C: Cilk
Extensão é provida por cinco palavras-chave:
●
cilk;
●
spawn;
●
sync;
●
inlet;
●
abort;
Exemplo em Cilk Plus
Unified Parallel C – UPC
●
Berkley/LBNL
●
2.18.2 em 5 de maio de 2014
●
Global Address Space – GAS
●
Ferramentas de análise (UPC Thrille), benchmarking...
●
Suporta grande gama de SMPs, clusters e MPPs : 
– x86, Itanium, Opteron, Alpha, PPC, MIPS, ARM, PA-RISC, SPARC, X1,
SX-6, Cray XT and XE, IBM Blue Gene...
– Linux, {Free,Net,Open}BSD, Tru64, AIX, IRIX, HPUX, Solaris, MS
Windows, Mac OS X, Unicos, SuperUX...
– Pthreads, Myrinet, Quadrics Elan 3/4, InfiniBand, IBM LAPI, Dolphin
SCI, MPI, Ethernet, Cray X1 / SGI Altix shmem, Cray XT Portals, Cray
XE Gemini (beta), IBM BG/P DCMF

Mais conteúdo relacionado

Mais de Roní Gonçalves

Sintetizador de freqüências a partir de um PLL
Sintetizador de freqüências a partir de um PLLSintetizador de freqüências a partir de um PLL
Sintetizador de freqüências a partir de um PLLRoní Gonçalves
 
(Alguns) Tipos de osciladores eletrônicos
(Alguns) Tipos de osciladores eletrônicos(Alguns) Tipos de osciladores eletrônicos
(Alguns) Tipos de osciladores eletrônicosRoní Gonçalves
 
Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...
Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...
Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...Roní Gonçalves
 
Um pouco da história e do funcionamento do transistor
Um pouco da história e do funcionamento do transistorUm pouco da história e do funcionamento do transistor
Um pouco da história e do funcionamento do transistorRoní Gonçalves
 
Manutenção em motores elétricos
Manutenção em motores elétricosManutenção em motores elétricos
Manutenção em motores elétricosRoní Gonçalves
 
Vibe, brazilian fabless company
Vibe, brazilian fabless companyVibe, brazilian fabless company
Vibe, brazilian fabless companyRoní Gonçalves
 

Mais de Roní Gonçalves (9)

Sintetizador de freqüências a partir de um PLL
Sintetizador de freqüências a partir de um PLLSintetizador de freqüências a partir de um PLL
Sintetizador de freqüências a partir de um PLL
 
(Alguns) Tipos de osciladores eletrônicos
(Alguns) Tipos de osciladores eletrônicos(Alguns) Tipos de osciladores eletrônicos
(Alguns) Tipos de osciladores eletrônicos
 
Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...
Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...
Alguns aspectos sobre caracterização de materiais e de dispositivos semicondu...
 
Real Time Protocol
Real Time ProtocolReal Time Protocol
Real Time Protocol
 
Um pouco da história e do funcionamento do transistor
Um pouco da história e do funcionamento do transistorUm pouco da história e do funcionamento do transistor
Um pouco da história e do funcionamento do transistor
 
Manutenção em motores elétricos
Manutenção em motores elétricosManutenção em motores elétricos
Manutenção em motores elétricos
 
Vibe, brazilian fabless company
Vibe, brazilian fabless companyVibe, brazilian fabless company
Vibe, brazilian fabless company
 
Análise de vibração
Análise de vibraçãoAnálise de vibração
Análise de vibração
 
Presentation_Roni
Presentation_RoniPresentation_Roni
Presentation_Roni
 

Último

Proposta de dimensionamento. PROJETO DO CURSO 2023.pptx
Proposta de dimensionamento. PROJETO DO CURSO 2023.pptxProposta de dimensionamento. PROJETO DO CURSO 2023.pptx
Proposta de dimensionamento. PROJETO DO CURSO 2023.pptxWiliamArmandoHarisso
 
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptxSEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptxavaseg
 
treinamento de moldagem por injeção plástica
treinamento de moldagem por injeção plásticatreinamento de moldagem por injeção plástica
treinamento de moldagem por injeção plásticaleilannygaldino
 
ST 2024 Apresentação Comercial - VF.ppsx
ST 2024 Apresentação Comercial - VF.ppsxST 2024 Apresentação Comercial - VF.ppsx
ST 2024 Apresentação Comercial - VF.ppsxmarketing18485
 
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdfATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdftatebib346
 
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADECONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADEssusercc9a5f
 

Último (6)

Proposta de dimensionamento. PROJETO DO CURSO 2023.pptx
Proposta de dimensionamento. PROJETO DO CURSO 2023.pptxProposta de dimensionamento. PROJETO DO CURSO 2023.pptx
Proposta de dimensionamento. PROJETO DO CURSO 2023.pptx
 
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptxSEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
 
treinamento de moldagem por injeção plástica
treinamento de moldagem por injeção plásticatreinamento de moldagem por injeção plástica
treinamento de moldagem por injeção plástica
 
ST 2024 Apresentação Comercial - VF.ppsx
ST 2024 Apresentação Comercial - VF.ppsxST 2024 Apresentação Comercial - VF.ppsx
ST 2024 Apresentação Comercial - VF.ppsx
 
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdfATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
 
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADECONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
 

Paralelismo e concorrência

  • 2. Paralelismo com Haskell Paralelismo é aumentar a velocidade de um programa usando múltiplos processadores. Fonte: http://www.haskell.org/haskellwiki/Parallelism
  • 3. Paralelismo com mais rigor Conjunto de técnicas de programação e de hardware permitindo a execução simultânea de instruções independentes em processadores diferentes. -- Guy Moebs. Fonte: Laboratório de Matemática Jean Leray. Universidade de Nantes
  • 4. Paralelismo & concorrência Há duas maneiras de se obter paralelismo em Haskell: ● Paralelismo puro: pode ser usado para acelerar partes do programa que não lidam com E/S;
  • 5. Paralelismo & concorrência Há duas maneiras de se obter paralelismo em Haskell: ● Paralelismo puro: pode ser usado para acelerar partes do programa que não lidam com E/S; ● Concorrência: que pode ser usada para paralelizar operações de E/S.
  • 6. Vantagens do paralelismo puro Garantidamente determinístico Não há condições de corrida nem deadlocks
  • 7. Regra de ouro Sempre que puder use paralelismo puro; quando não puder: concorrência.
  • 8. Paralelismo em C: Cilk ● Professor Charles E. Leiserson no MIT; ● Provê à linguagem C programação multithread ● Última versão oficial pelo MIT: 5.4.6 ● Intel se junta aos desenvolvedores para avançar nesta tecnologia: Cilk Plus
  • 9. Paralelismo em C: Cilk Extensão é provida por cinco palavras-chave: ● cilk; ● spawn; ● sync; ● inlet; ● abort;
  • 11. Unified Parallel C – UPC ● Berkley/LBNL ● 2.18.2 em 5 de maio de 2014 ● Global Address Space – GAS ● Ferramentas de análise (UPC Thrille), benchmarking... ● Suporta grande gama de SMPs, clusters e MPPs :  – x86, Itanium, Opteron, Alpha, PPC, MIPS, ARM, PA-RISC, SPARC, X1, SX-6, Cray XT and XE, IBM Blue Gene... – Linux, {Free,Net,Open}BSD, Tru64, AIX, IRIX, HPUX, Solaris, MS Windows, Mac OS X, Unicos, SuperUX... – Pthreads, Myrinet, Quadrics Elan 3/4, InfiniBand, IBM LAPI, Dolphin SCI, MPI, Ethernet, Cray X1 / SGI Altix shmem, Cray XT Portals, Cray XE Gemini (beta), IBM BG/P DCMF