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 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";
= 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;
".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