Você está na página 1de 6

Arquitetura de Computadores A 2013/2

- Especificao do Segundo Trabalho Prtico -



1. Objetivo
Utilizando o simulador SimpleScalar Sim-Cache e os benchmarks e gcc que
podem ser obtidos no !oodle da disciplina" simular a e#ecu$%o das aplica$&es sobre
di'ersas con(i)ura$&es de cache indicadas* + intuito deste trabalho , 'eri(icar o impacto
dos '-rios compromissos na per(ormance da cache*

!. "escrio das tarefas
.e)uem abai#o as tare(as a serem realizadas neste trabalho*

/+ sistema a ser modelado nas simula$&es , composto por duas caches0 uma de
instru$&es e outra de dados0 cada uma com capacidade de 2 1b2tes* 3ste tamanho
ser- (i#o para todas as simula$&es0 sal'o quando e#plicitamente indicado o
tamanho*
- A primeira tare(a , e#ecutar as con(i)ura$&es de cache indicadas no
simulador simplescalar e completar as tabelas abai#o* As colunas 4cache e 5cache
representam a ta#a de misses nas caches de instru$&es e de dados0 respecti'amente*
- 6ara cada e#perimento0 os dados obtidos de'em ser entre)ues na (orma de
tabelas0 bem como de'em ser apresentados )r-(icos comparati'os* As tabelas
de'em aparecer no (inal do documento0 como ane#o* As tare(as tabelas0 )r-(icos e
respostas" de'em ser (eitas para ambos os benchmarks*
- As respostas de'em ser e#ploradas em cima )r-(icos0 montando um
documento em estilo de arti)o*


. 4n'esti)ar a in(lu7ncia do tipo de mapeamento empre)ado direto0 associati'o por
con8unto e totalmente associati'o"

9endo/se em mente a anuteno dos mesmos tamanhos de cache para dados e
instru$&es 2 1b2tes cada"0 a anuteno do tamanho do bloco0 as associati'idades
indicadas abai#o e as pol:ticas de substitui$%o dispon:'eis0 complete a tabela abai#o
lembre/se que o tamanho total da cache , obtido atra',s da se)uinte e#press%o; assoc* # n<
con8 # tam=blocoem b2tes";

LRU (l)
N
Conj.
Tam.
Bloco
Asso
c.
lcache
(%)
Dcache
(%)
64 32 l
32 32 2
l6 32 4
8 32 8
4 32 l6
2 32 32
l 32 64







gcc
LRU (l)
N
Conj.
Tam.
Bloco
Asso
c.
lcache
(%)
Dcache
(%)
64 32 l
32 32 2
l6 32 4
8 32 8
4 32 l6
2 32 32
l 32 64


>ualis" linhas da tabela n%o necessita de al)oritmo de substitui$%o? 6orque?
4denti(ique o mapeamento de cada linha da tabela* 3#; 2/@a20 mapeamento
direto0 totalmente associati'o"*
Considerando/se que as caches de dados e instru$&es est%o separadas0 qual a
melhor combina$%o em termos da menor ta#a de misses obtida" entre cache de
instru$&es e de dados?
>ual o comportamento das duas caches quando do aumento da associati'idade
e conseqAente diminui$%o do nBmero de con8untos"? 6orque?


. 4n'esti)ar a in(lu7ncia da 'aria$%o do tamanho do bloco no desempenho da cache
!antendo/se (i#a a pol:tica de substitui$%o da cache CDU" e a associati'idade 1"0
completar a tabela abai#o realizando e#perimentos com as 'aria$&es indicadas nas duas
primeiras colunas;


N Conj Tam Bloco Assoc. Poltica lcache (%) Dcache (%)
256 8 l LRU
l28 l6 l LRU
64 32 l LRU
32 64 l LRU
l6 l28 l LRU
8 256 l LRU
4 5l2 l LRU
2 l024 l LRU
l 2048 l LRU

gcc
N Conj Tam Bloco Assoc. Poltica lcache (%) Dcache (%)
256 8 l LRU
l28 l6 l LRU
64 32 l LRU
32 64 l LRU
l6 l28 l LRU
8 256 l LRU
4 5l2 l LRU
2 l024 l LRU
l 2048 l LRU



>ual o comportamento obser'ado para as duas caches em termos de percentual
de (altas no acessos quando o tamanho do bloco cresce?
Como 'oc7 e#plicaria os comportamentos obser'ados para as caches de
instru$&es e de dados separadamente?
>ual , o melhor tamanho de bloco para a cache de instru$&es e para a cache de
dados? E o mesmo tamanho de bloco? .e n%o0 porque?

. 4n'esti)ar a in(lu7ncia do tamanho total da cache

6ara este e#perimento0 o tamanho da cache ser- aumentado de 2 para F0 G0 1H e 32 1b2tes*
A primeira tabela mostra o aumento da cache em um mapeamento direto0 a se)unda tabela
a mostra este crescimento em uma cache associati'a por con8unto F e a terceira com um
mapeamento totalmente associati'o*



Tamanho Total n conjuntos Tam. Bloco Assoc Poltica lcache (%) Dcache (%)
2k l28 l6 l LRU
4k 256 l6 l LRU
8k 5l2 l6 l LRU
l6k l024 l6 l LRU
32k 2048 l6 l LRU

Tamanho Total n conjuntos Tam. Bloco Assoc Poltica lcache (%) Dcache (%)
2k 32 l6 4 LRU
4k 64 l6 4 LRU
8k l28 l6 4 LRU
l6k 256 l6 4 LRU
32k 5l2 l6 4 LRU


Tamanho Total n conjuntos Tam. Bloco Assoc Poltica lcache (%) Dcache (%)
2k l l6 l28 LRU
4k l l6 256 LRU
8k l l6 5l2 LRU
l6k l l6 l024 LRU
32k l l6 2048 LRU





gcc


Tamanho Total n conjuntos Tam. Bloco Assoc Poltica lcache (%) Dcache (%)
2k l28 l6 l LRU
4k 256 l6 l LRU
8k 5l2 l6 l LRU
l6k l024 l6 l LRU
32k 2048 l6 l LRU

Tamanho Total n conjuntos Tam. Bloco Assoc Poltica lcache (%) Dcache (%)
2k 32 l6 4 LRU
4k 64 l6 4 LRU
8k l28 l6 4 LRU
l6k 256 l6 4 LRU
32k 5l2 l6 4 LRU


Tamanho Total n conjuntos Tam. Bloco Assoc Poltica lcache (%) Dcache (%)
2k l l6 l28 LRU
4k l l6 256 LRU
8k l l6 5l2 LRU
l6k l l6 l024 LRU
32k l l6 2048 LRU


>ual o mapeamento que (ornece menor nBmero de misses para uma cache de
21b2tes? 6orque?
>ual o mapeamento que (ornece menor nBmero de misses para uma cache de
321b2tes? 6orque?
6orque a cache totalmente associati'a (ornece a menor percenta)em de misses
para todos os tamanhos de cache? >ual s%o as des'anta)ens deste mapeamento?
Ce'ando em conta o desempenho e o custo em hard@are qual seria a melhor
con(i)ura$%o de cache em termos de mapeamento e tamanho de cache? 6orque?


O#S1.$ + nBmero m-#imo de instru$&es a serem simuladas , de F0 milh&es /ma#;inst
F0000000"* O#S!.$ Utilizar somente caches de dados e instru$&es de n:'el 1 dl1 e il1"*

%. Pra&o de entrega$ '()'1)!'1*+ ipreterivelente

*. ,aterial a ser entregue
.ubmeter0 unicamente atra',s do moodle0 um arqui'o com este (ormato
Inome=do=alunoJ/
Inumero de matriculaJ*(ormato Kormatos aceitos; 5+C/65K"

contendo o nome do aluno0 8untamente com seu nBmero de matr:cula*

3#emplo;
Lor)es=de=!edeiros/MMMMMMMM*zip


-. .nstru/es para e0ecuo da siulao 12inu0 e 3indo4s)56g4in7

6ara utilizar o simulador0 utilize o se)uinte comando este8a dentro do diretNrio
onde est- o simulador sim/cache";

./sim-cache redir:sim <dir_bench>/nome_bench.txt cache:il1
<config> cache:dl1 <config> <dir_bench>/nome_bench.ss

PARA EE!"#AR $ %!!:

./sim-cache redir:sim <dir_bench>/nome_bench.txt cache:il1
<config>
-cache:dl1 <config> <dir_bench>/nome_bench.ss -O
<dir_bench>/1stmt.i


onde;
redir$si
(nome_bench.txt);

= redireciona os resultados da simulao para o arquivo txt especificado
<config> = parmetros de configurao da cache (dados e instrues);
<dir_bench> = diretrio onde est o benchmark e suas entradas.

+ parOmetro <config>0 que con(i)ura a cache0 possui o (ormato abai#o;

<name>:<nsets>:<bsi&e>:<assoc>:<re'l>
onde:
<name> = nome da cache sendo definida (ill ou dll) deve ser nico
<nsets> = nmero de conjuntos da cache
<bsize> = tamanho de cada bloco (em bytes)
<assoc> = associatividade da cache (deve ser potncia de 2)
<repl> = poltica de reposio da cache ('l' = LRU, 'f' = FlFO e 'r' =
aleatria)

sendo o tamanho da cache o produto

8nsets9 : 8bsi&e9 : 8assoc9

+s 'alores/padr%o usados no Sim-Cache s%o os se)uintes;

C1 instruction cache; il1:()*:+(:1:l ,- ./0
C1 data cache; dl1:()*:+(:1:l ,- ./0


".5;1$ < interessante a criao de scripts e organi&ao e diret=rios
para cada ua das configura/es para a e0ecuo deste trabalho+ pois
assi ganha-se tepo na e0ecuo do siulador.
".5; !$ >o copie o trabalho+ a f=rula de diviso de nota ainda est
e vigor?

"@A.";S$ Enviar u eail para o onitor da disciplina??
>oe$ Sandro Pedroso Bacobsen
Eail$ sandrojacobsenCgail.co

DEES.TOS "E ;A;2.;FGO$
Organi&ao- Peso 1
5lare&a - Peso 1
Siulao - Peso 1
Hrficos - Peso 1
E0plicao - Peso (
m ser feitos.

Você também pode gostar