goback - departamento de engenharia informáticapaf/orgcdocs/procparalelo-slides.pdf · orgc...
TRANSCRIPT
![Page 1: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/1.jpg)
GoBack
![Page 2: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/2.jpg)
ORGC Processamento Paralelo – slide 1
Organizac ao de Computadores – 2005/2006Processamento Paralelo
Paulo Ferreirapaf a©dei.isep.ipp.pt
Maio de 2006
![Page 3: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/3.jpg)
Introduc ao
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 2
![Page 4: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/4.jpg)
Porqu e?
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 3
� Uma forma de conseguir mais performance.
� ≪–Se um boi lavra um campo, porque nao 40 galinhas?≫
� ≪–Porque nao 40 bois, mais depressa?≫
![Page 5: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/5.jpg)
Definic ao de computac ao paralela
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 4
� Um conjunto de elementos de processamento que cooperam para resolverproblemas grandes de uma forma rapida.
� E que problemas temos de resolver?
![Page 6: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/6.jpg)
Alocac ao de recursos
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 5
� Qual o numero de elementos?
� Qual a performance dos elementos?
� Quantidade de memoria?
![Page 7: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/7.jpg)
Acesso aos dados, comunicac ao e sincronizac ao
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 6
� Como e que os elementos cooperam e comunicam?
� Como e que os dados sao transmitidos entre processadores?
� Que primitivas e abstracoes existem para a cooperacao?
![Page 8: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/8.jpg)
Performance e escalabilidade
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 7
� Como e que isto se traduz em termos de performance?
� E em termos de escalabilidade?
� Escalabilidade quer dizer aumento de performance com o aumento do no deelementos.
![Page 9: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/9.jpg)
Hoje em dia
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 8
� Microprocessadores de elevada performance
� Microprocessadores mais baratos
� Paralelismo ao nıvel da instrucao ja existe.
� Passo seguinte: Computacao paralela
![Page 10: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/10.jpg)
Hist oria
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 9
� Processadores de 4, 8, 16, 32, 64 bits
� Uma unidade de execucao, varias unidades de execucao
� Passo seguinte?
� Varios processadores?
� Varios processos por processador?
� VLIW?
![Page 11: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/11.jpg)
Hist oria
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 9
� Processadores de 4, 8, 16, 32, 64 bits
� Uma unidade de execucao, varias unidades de execucao
� Passo seguinte?
� Varios processadores?
� Varios processos por processador?
� VLIW?
� Ja ha:
� Hyperthreading (Intel)
� Dual Core (Intel+AMD)
� 8 Cores * 4 threads (Sun Ultra Sparc T1)
![Page 12: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/12.jpg)
Hist oria
Introducao
Porque?
Definicao de computacaoparalela
Alocacao de recursos
Acesso aos dados,comunicacao e sincronizacao
Performance e escalabilidade
Hoje em dia
Historia
Historia
Taxonomia
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 10
� Modelos divergentes
� Modelo de programacao = Primitivas de comunicacao = o que existia no hardware
� Hoje em dia ja ha mais flexibilidade
![Page 13: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/13.jpg)
Taxonomia
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 11
![Page 14: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/14.jpg)
Memoria partilhada
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 12
� Mais simples
� Varios processadores partilham a mesma memoria
� Parecido com o time-sharing nos S.O. multitarefa
� Extensao dos modelos de programacao multitarefa (processos⇒processadores)
� Arquitectura menos estranha relativamente ao normal
� Cuidado: Acesso a memoria uniforme ou nao?
![Page 15: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/15.jpg)
Hardware de comunicac oes
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 13
I / Oc tr lMe m Me m Me mIn te r c on n e c t
M e m I / Oc t r l
P r oc e s s o r P r oc e s s o rIn te r c on n e c tI / Ode v ic e s
![Page 16: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/16.jpg)
Memoria partilhada
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 14
� Estilo mainframe
� Uso de um crossbar
� Switch que permite a ligacao simultanea entre p processadores e m memorias
� Vantagens: Performance
� Desvantagens: Custo
![Page 17: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/17.jpg)
Exemplo de Hardware
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 15
![Page 18: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/18.jpg)
Memoria partilhada
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 16
� (estilo PC)
� Partilha de um bus de acesso a memoria por todos os processadores
� SMP – Simmetric MultiProcessing
� Vantagens: Custo
� Desvantagens: Performance
� A largura de banda do barramento e partilhada por todos os processadores.
� Caches: problema da coerencia?
![Page 19: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/19.jpg)
Exemplo de Hardware
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 17
![Page 20: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/20.jpg)
Escalabilidade
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 18
![Page 21: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/21.jpg)
Memoria partilhada n ao uniforme
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 19
� NUMA – Non Uniform Memory Access
� Cada processador tem a sua memoria
� Todos os processadores acedem a memoria dos outros, pela interligacao
![Page 22: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/22.jpg)
Interligac ao
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 20
� Em bus?
� Em rede?
� Em switch
� Coisas novas – Hypertransport
![Page 23: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/23.jpg)
Message Passing
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 21
0 0 00 0 1
01 001 1
1 0 01 1 0
1 0 11 1 1
![Page 24: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/24.jpg)
Message passing
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 22
� Entre os processadores circulam mensagens
� Originalmente implementacao em hardware
� Mais flexıvel em software
� Muitos overheads
� Programacao simples
![Page 25: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/25.jpg)
Paralelismo de dados
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 23
� SIMD – Single Instruction Multiple Data processamento de vectores e matrizes
� As operacoes sao feitas em paralelo em cada elemento da estrutura de dados.
� Existe apenas uma instrucao para todos os processadores
� Um processador por elemento da estrutura de dados
� Processador: ⇒ recebe instrucao, executa instrucao
� Processador de controle: ⇒ le programa e envia instrucoes para os outros
![Page 26: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/26.jpg)
Exemplo de hardware
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 24
![Page 27: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/27.jpg)
Dataflow
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 25
� Implementar em hardware as expressoes matematicas
� Cada operacao e implementada num no.
� Cada no recebe os operandos e envia o resultado
![Page 28: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/28.jpg)
Exemplo de hardware
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 26
1 ba
+ − ×× ×c e
df
D a t a f lo w g r a p hf= a × d
N e t wo r k
To k e ns to r eW a i t i n gM a t c h i n g I n s t r u c t io nf e t c h Ex e c u t eTo k e n q u e u e Fo r mto k e n N e t wo r kN e t wo r k
P ro g r a ms to r e
a= ( b + 1 ) × ( b − c )d = c × e
![Page 29: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/29.jpg)
Arquitecturas sist olicas
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 27
� Pipeline de elementos de processamento
� Diferente de dataflow porque cada elemento tem (pode ter) programa local, ememoria local
� Motivacao inicial: VLSI permite chips de baixo custo
� Ligar diferentes chips para fazer um algoritmo
� Poupar na largura de banda do acesso a memoria
![Page 30: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/30.jpg)
Exemplo de hardware
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 28
![Page 31: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/31.jpg)
Resumo (mem oria partilhada)
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 29
� UMA (mesma memoria para todos)
� Bus (aka SMP) – PCs
� Rede
� Crossbar – Mainframes
� NUMA (cada processador tem uma memoria mais sua)
� Interligacao pode ser de varios tipos
![Page 32: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/32.jpg)
Resumo (outros)
Introducao
Taxonomia
Memoria partilhada
Hardware de comunicacoes
Memoria partilhada
Exemplo de Hardware
Memoria partilhada
Exemplo de Hardware
Escalabilidade
Memoria partilhada naouniforme
Interligacao
Message Passing
Message passing
Paralelismo de dados
Exemplo de hardware
Dataflow
Exemplo de hardware
Arquitecturas sistolicas
Exemplo de hardware
Resumo (memoria partilhada)
Resumo (outros)
Detalhes
Paralelizacao
ORGC Processamento Paralelo – slide 30
� Paralelismo de dados
� extensoes SIMD dos processadores actuais
� Message passing
� entre computadores diferentes e o mais facil
� DataFlow e arquitecturas sistolicas
� Naming: como se acedem aos dados?
� so se estivermos a fazer hardware
![Page 33: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/33.jpg)
Detalhes
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 31
![Page 34: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/34.jpg)
Problemas fundamentais
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 32
� Naming: como se referenciam os dados partilhados
� Operacoes: que operacoes sao permitidas nesses dados
� Ordenamento: como sao coordenados e ordenados os acessos
� Replicacao: como os dados sao (ou nao) copiados
� Custo das comunicacoes: Latencia, largura de banda, overhead, ocupacao docanal
![Page 35: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/35.jpg)
Modelo de programac ao sequencial
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 33
� Naming: Espaco de enderecos virtual
� Hardware (e compiladores) fazem traducao
� Operacoes: Leituras e escritas
� Ordenamento: Ordem sequencial do programa
![Page 36: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/36.jpg)
Performance (programac ao sequencial)
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 34
� Dependencias baseadas em referencias feitas a variaveis.
� Compiladores e hardware desrespeitam as ordens
� Compilador: reordenamento e alocacao de registos
� Hardware: execucao fora de ordem
� Caches: replicacao transparente
![Page 37: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/37.jpg)
Modelo de mem oria partilhada
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 35
� Naming: Qualquer processo usa a memoria
� Operacoes: R/W mais as necessarias para ordenacao
� Modelo mais simples de Ordenacao:
� Dentro de um processo: ordem sequencial
� Entre processos: concorrencia
� Podemos ter sincronizacao
� Compiladores e hardware nao cumprem as ordens
![Page 38: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/38.jpg)
Sincronizac ao
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 36
� Exclusao Mutua
� Locks
� Assegurar que certas operacoes em certos dados sao feitas apenas por umprocesso de cada vez
� Nao da garantias nenhumas de ordenacao
� Sincronizacao de eventos
� Ordenar os eventos para salvaguardar dependencias
� ex: produtor ⇒ consumidor
� 3 tipos principais
� ponto a ponto
� global
� grupo
![Page 39: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/39.jpg)
Message Passing
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 37
� Naming: Apenas dos dados privados (nao existem dados partilhados)
� Operacoes: send e receive
� send : dados privados sao copiados para outro processo
� receive: dados do processo sao copiados para memoria
� Temos obrigatoriamente nomes para os processos
� Ordenacao:
� Ordem normal dentro de um processo
� send e receive podem fazer sincronismo ponto a ponto
� Exclusao mutua garantida
� Podemos construir enderecos globais
� Process Id + endereco dentro do processo
� Mas nao teremos operacoes directas nesses enderecos
![Page 40: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/40.jpg)
Naming e Operac oes
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 38
� Existindo no modelo de programacao podem ser suportadas:
� Directamente pelo hardware
� Pelo sistema operativo
� Por bibliotecas
� Pelo compilador
![Page 41: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/41.jpg)
Exemplo
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 39
� Memoria partilhada no modelo de programacao
� Hardware tem memoria fısicamente partilhada
� Suporte directo pelo hardware
� Hardware tem memorias independentes
� Memoria partilhada pode ser feita pelo sistema operativo
� Pode ser feita pelo compilador/bibliotecas
![Page 42: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/42.jpg)
Exemplo
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 40
� Message passing
� Suporte directo pelo hardware
� mais flexıvel com matching e buffering
� Suporte pelo S.O. ou acima
� Hardware faz o transporte
� Send/Receive em SW (proteccao,buffering)
� S.O.: custo das chamadas ao S.O.
![Page 43: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/43.jpg)
Ordenac ao
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 41
� Message Passing
� Nao existe nenhuma ordenacao exceptuando aquela que e imposta pelospares send/receive
� Memoria partilhada
� Importante e subtil
� Uniprocessadores fazem reordenacao para ganhar paralelismo ou localidade
� Estes truques sao mais importantes em multiprocessadores
� Quais sao os truques que continuam a ser validos?
� Quais sao os novos truques?
![Page 44: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/44.jpg)
Replicac ao
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 42
� Importante para reduzir transferencia de dados/comunicacao
� Depende do modelo de naming
� Uniprocessador: automatica
� Message passing: a replicacao tem de estar explıcita no SW
� Memoria partilhada: problema da coerencia das caches
![Page 45: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/45.jpg)
Comunicac ao
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 43
� Performance determina o uso das operacoes
� Tres caracterısticas fundamentais:
� Latencia: tempo necessario para o inıcio
� Largura de Banda: Velocidade de transferencia
� Custo: Tempo de CPU necessario
� Erros normais:
� Nao contar com a latencia
� Nao contar com a possibilidade de overlap
![Page 46: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/46.jpg)
Redes de interconex ao
Introducao
Taxonomia
Detalhes
Problemas fundamentais
Modelo de programacaosequencial
Performance (programacaosequencial)
Modelo de memoriapartilhada
Sincronizacao
Message Passing
Naming e Operacoes
Exemplo
Exemplo
Ordenacao
Replicacao
Comunicacao
Redes de interconexao
Paralelizacao
ORGC Processamento Paralelo – slide 44
� Cada vez mais importantes:
� Entre computadores
� Entre chips (Interconnection Networks)
� Intra chips
![Page 47: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/47.jpg)
Paralelizac ao
Introducao
Taxonomia
Detalhes
Paralelizacao
Lei de Amdahl
Decomposicao
Atribuicao
Orquestracao
Mapeamento
ORGC Processamento Paralelo – slide 45
![Page 48: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/48.jpg)
Lei de Amdahl
Introducao
Taxonomia
Detalhes
Paralelizacao
Lei de Amdahl
Decomposicao
Atribuicao
Orquestracao
Mapeamento
ORGC Processamento Paralelo – slide 46
� Um programa tem uma percentagem do seu tempo total de execucao serie S e oresto do tempo de execucao e paralelizavel P .
� Se o total do tempo de programa e 100% entao o tempo total e igual a 1, o queimplica que 1 = P + S ou de outra forma P = 1 − S.
� Temos assim que o tempo normal de execucao sera igual a S + (1 − S).
� Se pusermos N processadores a trabalhar na parte paralela e o tempo deexecucao da parte paralela diminuir de uma forma ideal o tempo de execucao seraigual a S + (1−S)
N.
� Se N for infinito, entao o tempo de execucao sera apenas de S.
� Logo o aumento de performance que teremos sera o inverso dos tempos ou(S+(1−S))
So que da 1
S, isto supondo que a paralelizacao e perfeita.
![Page 49: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/49.jpg)
Decomposic ao
Introducao
Taxonomia
Detalhes
Paralelizacao
Lei de Amdahl
Decomposicao
Atribuicao
Orquestracao
Mapeamento
ORGC Processamento Paralelo – slide 47
� A partir de um programa sequencial gerar tarefas
� O que e uma tarefa: parte do trabalho global que e processada sequencialmente.
� Muitas ou poucas tarefas?
![Page 50: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/50.jpg)
Atribuic ao
Introducao
Taxonomia
Detalhes
Paralelizacao
Lei de Amdahl
Decomposicao
Atribuicao
Orquestracao
Mapeamento
ORGC Processamento Paralelo – slide 48
� Atribuir (distribuir) tarefas pelos processos.
� O que e um processo: entidade que executa as tarefas, tem a obrigacao decomunicar com os outros processos para executar as tarefas.
� Atribuicao estatica ou dinamica? Vantagens e desvantagens?
� Se for dinamica temos uma fila de tarefas global ou uma fila por processo?Vantagens e desvantagens?
![Page 51: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/51.jpg)
Orquestrac ao
Introducao
Taxonomia
Detalhes
Paralelizacao
Lei de Amdahl
Decomposicao
Atribuicao
Orquestracao
Mapeamento
ORGC Processamento Paralelo – slide 49
� Objectivo: estruturar a comunicacao e o acesso aos dados.
� Que comunicacao vai haver entre que processos?
� Reduzir os custos da comunicacao.
� Escalonar as tarefas correctamente.
� Depende muito das primitivas oferecidas e do tipo de comunicacao.
� Depende de onde (em que processo) pomos os dados.
![Page 52: GoBack - Departamento de Engenharia Informáticapaf/orgcdocs/ProcParalelo-slides.pdf · ORGC Processamento Paralelo – slide 9 Processadores de 4, 8, 16, 32, 64 bits Uma unidade](https://reader038.vdocuments.site/reader038/viewer/2022110300/5be7484b09d3f2191b8c835d/html5/thumbnails/52.jpg)
Mapeamento
Introducao
Taxonomia
Detalhes
Paralelizacao
Lei de Amdahl
Decomposicao
Atribuicao
Orquestracao
Mapeamento
ORGC Processamento Paralelo – slide 50
� Atribuir processos aos processadores.
� Mais simples e usual: cada processo tem o seu processador.
� Normalmente o utilizador pode especificar a sua intencao mas o sistema operativopode decidir de outra maneira.