Sei sulla pagina 1di 3

Exerc´ıcios Re solvidos - Livro Patterson

Prof. Ricardo Jacobi

February 10, 2003

1. Deseja-se comparar a performance (desempenho) de duas maquinas diferentes: M1 e M2. As


s eguintes medidas foram feitas nestas maquinas:

Programa Tempo em M1 Tempo em M2


1 10 seg 5 seg
2 3 seg 4 seg

Qual maquina ´e mais rapida para cada programa e quanto mais?


tempo(M1 ) 10seg
R. Para P1: =
tempo(M2 ) 5seg = 2. M2 ´e 100% mais rapida que M1 .
tempo(M2 ) = 4seg = 1,33. M1 ´e 33% mais r´apida que M1 .
Para P2: tempo(M1 ) 3seg

2. Um programa P ´e executado em uma maquina de 500 Mhz. A distrib ui¸cao de instru¸coe s


de
P entre as class e s A, B e C de instrucoes da maquina (em milhoes) ´e:

A B C
Instru¸ e s 10 5 5
co CPI 1 2 4

(a) Calcule o des empenho da maquina em MIPS para P.


MIP S = tempo∗106 P = #I nstrucoes∗C =
#I nstrucoes #I nstr ucoes F
P I ∗P eriodo∗106 C P I ∗106
( 1∗10)+(2 ∗5)+ (4∗5) 40
CPI = 10+ 5+ 5
= 20 =2 ciclos
instrucao
MIP S = 500∗10
6
= 250
2∗106
(b) Calcule o desempenho em MIP S de pico.
500∗10
6
M I P SA = 6
= 500 c/in s
1∗10 c/ins
c/s
500∗10
6
MIP SB =2∗106 c/ins = 250 c/in s
c/s
500∗10
6
MIP SC =4∗106 c/ins = 125 c/in s
c/ s
O MIPS de pico ´e dado pela instrucao mais rapida, portanto
M I P Spico = 500
(c) Qual o tempo de execu¸cao de P ?
Itempoexec I ∗C P (10+5+ 5)∗106 ∗2 = 40∗10 6 = 80 ms
= F = 500∗106 500∗106

1
(d) Suponha que seja poss´ıvel util izar hardware e specializado para reduzir o nu´mero de ciclos
por instruc˜ao da classe C. Qual deveria s er o novo CPI d C para que houves se um speedup
de 1,6 na execu¸c˜ao de P ?
tempo
tempo++ = 1,6 = 80/1,6 = 50 ms
(10∗1+ 5∗2+5∗x)∗106
500∗106 = 50 ms
20 + 5*x = 500 * 0,05 = 25 => x = 1
O novo CPI de C deve ser 1.
3. Considere dua s maquinas diferentes, M1 e M2 , que implementam o mesmo conjunto de in-
strucoe s, com 3 classe s de instrucoes { A, B e C }. M1 tem um clock de 900 Hh e M2 tem
um clock de 600 Mhz. O CPI de cada class e ´e apresentado abaixo para M1 e M2 ,
junta- mente com o s dados sobre dois compiladores C1 e C2 utilizados para compilar
um mesmo programa P. Considere igualmente que C1 e C2 utilizam o mesmo nu
´mero de instru¸coe s, apenas com uma distri bui¸cao diferente conforme a tabela. S e
vocˆe tives se que e scolher um conjunto compilador/maquina para executar o programa P,
qual seria a sua e scolha ?

Classe CPI em M1 CPI em M2 Uso em C1 Uso em C2


A 2 4 30% 50%
B 4 4 30% 30%
C 6 2 40% 20%
6
( 4,2
(a) M0,3∗4+0,4∗6)∗10
0,3∗2+ 1e C1 tempo
: = I* = = 0,00467*I
900∗106 900
6
0,5∗2+ ( = 3,4
(b) M0,3∗4+0,2∗6)∗10
1e C2 tempo
: = I* = 0,00377*I
900∗106 900
6
0,3∗4+ ( = 3,2
(c) M0,3∗4+
2e C0,4∗2)∗10
1 tempo
: = I* = 0,0053*I
600∗106 600
6
0,5∗4+ ( = 3,6
(d) M0,3∗4+0,2∗2)∗10
2e C2 tempo
: = I* = 0,006*I
600∗106 600

A melhor escolha ´e portanto M1 e C2 .

4. Compare as filosofias RISC e CISC com relacao a:

(a) formato das instruc˜oes


As instrucoe s RISC sao caracterizadas por serem do mesmo tamanho e terem os campos
da instru¸cao padronizados, com o m esmo nu´mero de bits e ocupando a mesma posicao
na palavra.
As instru¸coe s CISC s e caracterizam por tamanhos variados, com campos nao uniformes.
(b) modos de endere¸camento
RISC: poucos modos de enderecamento, ace sso `a memoria atrav´e s da s instru¸coes load
e
store, operacoe s realizadasprincipalmente com registradores.
CISC: diversos modos de endere¸camento. Dados utili zado s em operacoes logico-aritm´eticas
podem e star tanto na memoria quanto nos registradores. Opera¸coe s de movimentaca˜o
de dados na memoria e entre memoria e registradores.
(c) nu´mero de ciclos por instrucao
RISC: latˆencia das instrucoes igual ao nu´mero de estagios do pipeline. Taxa de execucao
ideal de um ciclo por instruca˜o.
CISC: instru¸coe s com nu´mero variado de ciclos.
2

Potrebbero piacerti anche