Aula_010 - Arquiteturas Avançadas
-
Upload
roberto-salomao -
Category
Documents
-
view
33 -
download
0
Embed Size (px)
Transcript of Aula_010 - Arquiteturas Avançadas
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
1/38
1
Professores:
Lcia M. A. DrummondSimone de Lima Martins
Aula 10
Contedo:
Arquiteturas Avanadas
-Arquiteturas RISC -Processamento Paralelo
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
2/38
2
Arquiteturas RISC
Reduced Instruction Set Computer se contrape arquiteturas at ento predominantes - CISC -Complex Instruction Set Computer
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
3/38
3
Arquiteturas RISC
Desenvolvimento por trs caminhos:
Projeto da IBM, desenvolvido em meados da dcada de 1970,sem sucesso comercial. A IBM ganhou mercado por volta de
1990 com os processadores RS/6000 e posteriormente com afamlia POWER PC, desenvolvida em conjunto com a Motorolae com a Apple.
Estudos em Stanford, por John Hennessy, que redundaramnos processadores Mips.
Estudos em Berkley, por David Patterson, que redundaramem processadores desenvolvidos pela Sun
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
4/38
4
Arquiteturas RISC
Alguns estudos verificaram:
Linguagem de alto nvel com comandos poderosos parafacilitar a vida dos programadores
Gap semntico: separao acentuada entre operaesde linguagem de alto nvel e em linguagem de mquina
Compiladores complexos
Solues:
Aumentar a quantidade de instrues Incluir mais modos de endereamento
Utilizar mais microprogramao
CISC
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
5/38
5
Arquiteturas RISC
Vrios pesquisadores realizaram estudos sobre comportamentodo programa. Em 1982, Patterson fez uma pesquisa analisandoprogramas cientficos, de emprego geral e de editorao.
(Fig. 11.2 do livro texto)
Comando
Assign
Loop
Call
IFGoto
Outros
Pascal
Ocorrncia
C
45%
5%
15%
29%
6%
38%
3%
12%
43%3%
1%
Pascal
Peso nas inst. mq.
C
23%
42%
31%
11%
3%
13%
32%
33%
21%
1%
Pascal C
14%
33%
44%
7%
2%
15%
26%
45%
13%
1%
Peso em ref. MP
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
6/38
6
Arquiteturas RISC
Outros estudos chegaram a mesma concluso:
Necessidade de aperfeioar o Hw para atender demanda de recursos
No eram necessrias tantas instrues de mquina,se apenas algumas delas eram utilizadas na maioriados programas
Muitas instrues significa muitos bits em cada cdigode operao - instruo com maior comprimento, mais
tempo de interpretao
Desenvolvimento de arquiteturas RISC
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
7/38
7
Arquiteturas RISC
(Fig. 11.1 do livro texto)
Sistemas
CISC 16
Tipo Ano Qtde. inst. Qtde. reg. Tamanho inst.
IBM /370-168
Intel 80486
Intel Pentium
Power PC 601
Sparc 10
Apha 21064
CISC
CISC
RISC
RISC
RISC
1973
1989
1993
1993
1987
1992
208
147
150
184
52
125
8
8
32-I 32-PF
at 528
32-I 32-PF
16-48 bits
1-17 bits
1-17 bits
32 bits
32 bits
32 bits
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
8/38
8
Arquiteturas RISC - Caractersticas
Menor quantidade de instrues e tamanho fixo
Execuo otimizada, o sistema deve produzir resultadoscom melhor desempenho, mesmo considerando que umamenor quantidade de instrues v conduzir a programasmais longos
Facilidade na busca e incremento do CI
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
9/38
9
Arquiteturas RISC - Caractersticas
Execuo otimizada de chamada de funes
Utilizao de registradores para passagem de parmetrose recuperao dos dados
Enquanto em arquiteturas CISC eram necessriasleitura e escrita na memria principal
RISC: Mais registradores j que ocorre a reduo decircuitos para decodificao e execuo de instrues
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
10/38
10
Arquiteturas RISC - Caractersticas
Menor quantidade de modos de endereamento
Apenas dois tipos de instruo para acesso memria:LOAD/STORE (utilizando modo direto)
Reduo de ciclos de relgio para execuo das demaisinstrues
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
11/38
11
Arquiteturas RISC - Caractersticas
Modo de execuo com Pipelining
Uso altamente produtivo do pipeline
Instrues de formatos simples e nicos tiram maior proveitodo pipeline - estgios consomem o mesmo tempo
12
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
12/38
12
Arquiteturas RISC - Caractersticas
(Fig. 11.3 do livro texto)
Caracterstica Consideraes
Menor quantidade deinstrues que as mquinasCISC
Execuo otimizada dechamada de funes
Menor quantidade de modosde endereamento
Utilizao em larga escalade pipelining
Simplifica o processamento de cada instruo e torna este item mais eficaz.
Embora o processador RS/600 possua 184 instrues, ainda assim bem menos que as 303 instrues dos sistemas VAX-11. Alm disso, a maioria das instrues realizada em 1 ciclo de relgio, o que considerado o objetivo maior dessa arquitetura.
As mquinas RISC utilizam os registradores da UCP (em maior quantidade que os processadores CISC) para armazenar parmetros e variveis em chamadas de rotinas e funes. Os processadores CISC usam mais a memria para a tarefa.
As instrues de processadores RISC so basicamente do tipo Load/Store, desvio e de operaes aritmticas e lgicas, reduzindo com isso seu tamanho.
A grande quantidade de modos de endereamento das instrues de
processadores CISC aumenta o tempo de execuo das mesmas.
Um dos fatores principais que permite aos processadores RISCatingir seu objetivo de completar a execuo de uma instruo pelo
menos a cada ciclo de relgio o emprego de pipeliningem larga escala.
13
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
13/38
13
Arquiteturas RISC -Medidas de Desempenho
MIPS - milhes de instrues por segundo. No uma boamedida para comparar RISC com CISC. RISC mais instruessimples.
MFLOPS - milhes de operaes de ponto-flutuante por segundo.Unidade mais apropriada para medir a velocidade com clculosmatemticos: programas cientficos, clculos meteorolgicos.
Os programas usados para teste so escritos em FORTRAN.
SPECmark - (system performance evaluation committee) - 10programas - 6 com clculos matemticos e 4 com operaesde inteiros e caracteres (escritos em C e Fortran). Medidas emSPECmark, composio dos resultados.
14
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
14/38
14
Arquiteturas RISC -Observaes RISC x CISC
CISC:
Menos instrues produz cdigo-objeto menor?
No, necessariamente, as instrues podem ser maiores
Com menos instrues o programa executa mais rapidamente?
No, necessariamente, o tempo de execuo de cada instruopode ser grande
15
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
15/38
15
Arquiteturas RISC -Observaes RISC x CISC
RISC:
Instrues possuem cdigo de operao com menorquantidade de bits - tempo de decodificao menor
Instrues executadas diretamente pelo hardware e nopor um microprograma - execuo mais rpida
16
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
16/38
16
Processamento Paralelo
Computador: mquina seqencial
Algoritmo: seqncia de instrues
Processadores: executam instrues seqencialmente
Instrues: executada por seqncia de operaes(busca, execuo, armazenamento)
Viso no totalmente verdadeira!
17
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
17/38
17
Processamento Paralelo
Nvel de microoperaes: vrios sinais de controle geradosao mesmo tempo
Tcnica de pipeline: sobreposio de etapas de execuo
Mquinas superescalares: diversas unidades de execuo emum mesmo processador, que podem executar vrias instruesde um mesmo programa em paralelo
18
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
18/38
18
Processamento Paralelo
Multiprocessadores simtricos: mltiplos processadorescompartilhando memria
Clusters: diversos computadores independentes, conectadosentre si, organizados de forma cooperativa
Mquinas de acesso no uniforme memria (NUMA):multiprocessador no qual o tempo gasto para acesso memria varia de acordo com a posio da palavra na memria
Outras oportunidades de explorao de paralelismo para melhoraro desempenho:
Mquinas vetoriais: otimizam a ULA para processamento de vetores de ponto-flutuante
19
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
19/38
19
Processamento Paralelo
SISD - nico processador executa uma nica seqncia deinstruo sobre dados armazenados em uma nica memria.
SIMD - vrios elementos de processamento. Cada um tem
uma memria de dados. Cada instruo executada sobreum conjunto de dados diferente. Processadores vetoriais ematriciais.
MISD - seqncia de dados transmitida para um conjuntode processadores, cada um dos quais executa uma seqnciade instrues diferente. Nunca foi implementado.
Taxonomia de Flynn (1972)
MIMD - conjunto de processadores executa simultaneamenteseqncias diferentes de instrues. SMPs, clusters, sistemasNUMA.
20
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
20/38
0
Processamento Paralelo
(Fig. 16.1 do livro de Arquitetura e Organizao de Computadores" , William Stalling)
Organizaes de processadores
nica instruo,nico dado (SISD)
nica instruo,mltiplos dados (SIMD)
Mltiplas instrues,nico dado (MISD)
Mltiplas instrues,mltiplos dados (MIMD)
Processadoresvetoriais
Uniprocessador
Processadoresmatriciais
Memria compartilhada(fortemente acoplados)
Memria distribuda(fracamente acoplados)
Multiprocessadorsimtrico (SMP)
Sistemas com acessono-uniforme
memria (NUMA)
Clusters
21
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
21/38
Processamento Paralelo
UC UP UMSI SD
(a) SISD
(Fig. 16.2 do livro de Arquitetura e Organizao de Computadores" , William Stalling)
(b) SIMD (com memria distribuda)
UC
EP1
EP2
EPn
.
.
.
ML1
ML2
MLn
SD
SD
SD
SI
(d) MIMD (com memria distribuda)
UC1
UC2
UCn
..
.
EP1
EP2
EPn
SI
SI
SI
SD
SD
SD
ML1
ML2
MLn
Rededeinterconexo
(c) MIMD (com memria compartilhada)
UC1
UC2
UCn
..
.
EP1
EP2
EPn
SI
SI
SI
SD
SD
SD
Mem
ria
compar
tilhada
22
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
22/38
Processamento Paralelo -Multiprocessadores Simtricos
Caractersticas:
Existem 2 ou mais processadores similares
Processadores compartilham memria
Compartilham acesso aos dispositivos de E/S
Todos os processadores podem desempenhar a mesma funo
Sistema controlado por SO integrado Exemplo: IBM S/390, at 10 processadores.
23
P t P l l
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
23/38
Processamento Paralelo -Multiprocessadores Simtricos Vantagens em relao a uniprocessadores:
Desempenho: se o trabalho efetuado pelo computador podeser organizado de forma que algumas pores possam serfeitas em paralelo, ento um sistema com mltiplosprocessadores resulta em maior desempenho.
(Fig. 16.3 do livro de Arquitetura e Organizao de Computadores" , William Stalling)
Tempo
(b) Tempo compartilhado e sobreposio (multiprocessamento)
Processo 1Processo 2
Processo 3
(a) Tempo compartilhado (multiprogramao)
Processo 3
Processo 2
Processo 1
Em execuoBloqueado
24
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
24/38
Processamento Paralelo -Multiprocessadores Simtricos
Vantagens em relao a uniprocessadores:
Disponibilidade: a falha de um processador no causa aparada do sistema. O sistema pode continuar a funcionar
com desempenho reduzido.
Crescimento incremental: para aumentar o desempenhopode se adicionar processador
Escalabilidade: fabricantes podem oferecer uma larga faixade produtos com caractersticas de desempenho e custodiferentes, com base no nmero de processadores
25
Processamento Paralelo
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
25/38
Processamento Paralelo -Multiprocessadores Simtricos Organizao:
Dois ou mais processadores (ULA, UC, registradores, cache) Memria e dispositivos de E/S compartilhados Processadores podem se comunicar por meio da memria
(mensagens e informaes armazenadas em reas comuns)
(Fig. 16.4 do livro de Arquitetura e Organizao de Computadores" , William Stalling)
...Rede de interconexo
Processador Processador Processador
E/S
Memria principal
E/S
E/S
...
26
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
26/38
Processamento Paralelo - Clusters
Grupo de computadores completos interconectados,trabalhando juntos, como um recurso computacional unificado
Benefcios:
Escalabilidade absoluta: possvel criar clusters muito grandes,dezenas de mquinas (cada mquina pode ser ummultiprocessador)
Escalabilidade incremental: possvel expandi-lo de formaincremental
Alta disponibilidade: falha de um n do cluster no significaperda total do servio. Tolerncia a falhas.
Melhor relao custo/ desempenho: facilidade de construir osistema a partir de ns bsicos comercialmentedisponveis
27
C
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
27/38
Processamento Paralelo - Clusters
Configuraes: classificao baseada na forma como oscomputadores do cluster compartilham acesso aos discos.
(Fig. 16.9 do livro de Arquitetura e Organizao de Computadores" , William Stalling)
(a) Servidor independente, sem compartilhamento de discos
(b) Discos compartilhados
Ligao de alta velocidade para troca de mensagens
P
E/S E/S
P
M
P
M E/S
P
E/S
RAID
Ligao de alta velocidade para troca de mensagens
M E/S E/S
E/SPP PPE/S
ME/SE/S
28
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
28/38
Processamento Paralelo -Clusters x SMP
SMP:
Mais prximo do modelo de um nico processador para o quala maior parte das aplicaes foi escrita
Requer menos espao fsico e suprimento de energia que umcluster comparvel
Clusters:
Muito superiores em relao escalabilidade absoluta eincremental
Superiores em relao disponibilidade, todos os componentesdo sistema so altamente redundantes
29
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
29/38
Processamento Paralelo - NUMA
Definies:
Acesso uniforme memria (UMA): todos os processadorestm acesso a todas as partes da memria principal. O tempode acesso o mesmo - SMP.
Acesso no uniforme memria (NUMA): Todos osprocessadores tm acesso a todas as partes da memriaprincipal. O tempo de acesso difere em relao posioe processador.
NUMA com coerncia de cache (CC-NUMA): um sistemaNUMA no qual mantida coerncia de cache entre asmemrias cache dos vrios processadores. Ex: Origin daSilicon Graphics, at 1024 processadores
30
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
30/38
Processamento Paralelo - NUMA
Motivao:
Em sistemas SMP existe um limite prtico para o nmero deprocessadores que podem ser usados
Um esquema de cache efetivo reduz o trfego no barramento
entre qualquer processador e a memria principal. A medidaque aumenta o trfego no barramento, este passa a constituirum gargalo de desempenho do sistema.
A degradao limita o nmero de processadores
Cluster: resolve o problema, mas a aplicao deve seradaptada ao ambiente
CC-NUMA grande rea de memria no sistema, permitindovrios ns multiprocessadores, cada qual com o seuprprio barramento
31
Processamento Paralelo - CC-NUMA
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
31/38
Processamento Paralelo CC NUMAOrganizao:
Cada n do sistema inclui uma memria principal, mas do ponto de vista dos processadores existe uma nica memria enderevel, com
cada posio de memria tendo um endereo nico em todo o sistema.
(Fig. 16.10 do livro de Arquitetura e Organizao
de Computadores" , William Stalling)
Rede de
interconexo
. . .
E/S
Cache L2 Cache L2 Diretrio
Cache L1
Processador1-1
Cache L1
Processador1-m
Memria
principal 1
Cache L2 Cache L2
. . .
E/S
Cache L2 Cache L2 Diretrio
Cache L1
Processador2-1
Cache L1
Processador2-m
Memria
principal 2
. . .Cache L2 Cache L2 E/S
Diretrio
Cache L1
ProcessadorN-1
Cache L1
ProcessadorN-m
Memria
principal N
32
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
32/38
Processamento Paralelo - CC-NUMA
Considerao:
Disponibiliza desempenho efetivo em nveis de paralelismomais altos que o fornecido por sistemas SMP, sem requerer
mudanas substanciais no software.
33
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
33/38
Processamento Paralelo -Computao Vetorial
Computadores capazes de resolver problemas matemticosrelativos a processos reais em: aerodinmica, sismologia,meteorologia e fsica atmica, nuclear e de plasma.
Problemas efetuam repetidas operaes aritmticas deponto-flutuante em grandes vetores de nmeros
Supercomputadores muito custosos, otimizados paracomputao vetorial, projetados para efetuar centenas
de milhes de operaes de ponto flutuante por segundo
34
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
34/38
Processamento Paralelo -Computao Vetorial
Abordagens:
ULA com pipeline de operaes (vector processor)
(Fig. 16.13(a) do livro de Arquitetura e Organizao de Computadores" , William Stalling)
Memria
Registradoresde entrada ULA com pipelinede operaes
Registrador
de sada
35
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
35/38
Processamento Paralelo -Computao Vetorial
ULAs paralelas (array processor)
(Fig. 16.13(b) do livro de Arquitetura e Organizao de Computadores" , William Stalling)
Memria
Registradores
de entrada
Registrador
de sada
ULA
ULA
ULA
36
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
36/38
Processamento Paralelo -Computao Vetorial
Processadores Paralelos: mltiplos processadores trabalhandode forma cooperativa sobre uma dada tarefa
(Fig. 16.15 do livro de Arquitetura e Organizao de Computadores" , William Stalling)
Uniprocessador ULA com pipeline
de operaes
ULAs paralelas
Unidade de controle nica
Multiprocessador Processadores
paralelos
Mltiplas unidadesde controle
37
Bibli fi
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
37/38
Bibliografia
Arquiteturas RISC: Introduo Organizao de Computadores -
Mrio A. Monteiro - LTC- Captulo 11
Processamento Paralelo: Arquitetura e Organizao de
Computadores - William Stalling - Prentice-Hall - Captulo 16
38
E i
-
5/26/2018 Aula_010 - Arquiteturas Avan adas
38/38
Exerccios
Arquiteturas RISC: Introduo Organizao de Computadores -
Mrio A. Monteiro - LTC- Captulo 11
Exerccios: 1, 2 ,3, 4 e 6
Processamento Paralelo: Arquitetura e Organizao de
Computadores - William Stalling - Prentice-Hall - Captulo 16
Exerccio: 16.8