Você está na página 1de 3

UNIVERSIDADE FEDERAL DE PELOTAS

Centro de Desenvolvimento Tecnológico


Curso de Ciência da Computação

Por: Anna Gabriele M. de Oliveira


Matrícula: 20200266

Lista de exercícios 1: AOC2

1. Por que não podemos utilizar apenas memórias SRAM para a construção da
hierarquia de memória? Explique as vantagens e desvantagens desta tecnologia de
implementação.
R: Devido ao custo e área ocupada. A SRAM utiliza 6 transistores por bit, assim, ao
aumentarmos a capacidade da SRAM em taxa de bits, a quantidade de transistores aumenta
exponencialmente, aumentando o espaço físico que esta memória ocupa nos chips. Além
disso, aumentará o custo dessa memória, que já é mais elevado do que as demais.

Entre as vantagens da SRAM temos a eficiência, rapidez e a manutenção dos bytes sem
atualização contínua (perdendo informações somente quando não é energizada). Para as
desvantagens temos o custo e área ocupada já mencionados.

2. Explique porque nos sistemas computacionais atuais o uso de uma hierarquia de


memória é fundamental.
R: Com as memórias na base da pirâmide obtemos uma alta capacidade de memória com
custo baixo (com a desvantagem de ser mais lenta), e mais ao topo da pirâmide obtemos
memórias mais rápidas ( com a desvantagem de custo e espaço no chip), assim, é fundamental
a utilização de todos os tipos de memória disponíveis, para o melhor aproveitamento do que
cada memória pode oferecer, com as perdas medianas.

3. Explique o funcionamento de uma cache e porque ela aumenta a eficiência do


sistema.
R: A memória cache é a menor e mais rápida memória da hierarquia de memórias, e tem a
função de fornecer ao processador as informações mais cruciais sem que o mesmo tenha que
procurar a informação em memórias mais lentas.
A memória cache aumenta a eficiência do sistema pois, ao armazenar estas informações
cruciais, a probabilidade de ocorrência dos princípios de localidades temporal e espacial
corrobora para a utilização e armazenamentos destas mesmas informações na cache. Assim,
quando o processador necessita de informações espacialmente e temporalmente próximas de
uma informação já requerida, a probabilidade de ocorrência de acertos sem necessitar do
acesso a memórias mais lentas aumenta.

4. Quantos níveis podem existir em uma hierarquia de memória?


R: Podem existir quantos níveis quanto necessário, monetariamente e espacialmente
disponível.
5. O que é um bloco de uma cache?
R: É a unidade mínima de informação da memória cache, e contém um determinado número
de palavras de memória. Quando o processador busca uma informação que esteja contida em
alguma das palavras do bloco, o mesmo não necessita procurar esta informação em memórias
mais lentas, é chamado um acerto (hit). Caso contrário, se alguma das palavras do bloco de
cache não contém a informação requerida, é uma falha (miss).

6. O que é a taxa de acertos, também chamada de hit ratio?


R: A taxa de acertos é a quantidade de vezes que o processador buscou na cache uma
informação e a encontrou.

7. Se o hit ratio de uma cache é de 0.78, quanto será seu miss ratio?
R: miss ratio = 1 - 0.78 = 0.22%.

8. Descreva o que é penalidade por falta em uma cache.


R: Penalidade por falta acontece quando o processador acessa a cache em busca de uma
informação e não a encontra. Nestes casos, o tempo necessário para buscar essa informação
em um dos níveis mais baixos da hierarquia de memória, colocar essa informação na cache
(seja por substituição da informação anterior ou não), e enviar esta informação para o
processador é a chamada penalidade por falta.

9. Qual a maior vantagem e desvantagem do uso de associatividade na cache?


R: As maiores vantagens são o ganho de localidade temporal sem o total do custo mais
dispendioso do mapeamento completamente associativo. A desvantagem é que o mapeamento
associativo não é tão rápido quanto o do mapeamento direto.

10. Cite as vantagens e desvantagens dos seguintes mapeamentos:

a) Direto:
R: A vantagem é o menor custo computacional, o processador pesquisa a informação desejada
em uma palavra específica da cache, se não estiver ali não estará em mais nenhum outro lugar
da cache, o que poupa tempo de acesso à memória. A desvantagem é que quando uma
informação está destinada à mesma palavra do bloco da cache, ela é substituída pela nova
informação, o que mata a eficiência de uma possível localidade temporal. Uma vez que,
mesmo que a localidade temporal aconteça, a informação já terá sido sobrescrita.

b) Totalmente associativo e em qual cenário esta estratégia é mais utilizado:


R: A vantagem é que há ganho de localidade temporal, uma vez que a informação não é
substituída imediatamente por uma outra que vá ser armazenada na mesma palavra do bloco
da cache. A desvantagem é o maior custo computacional, uma vez que as informações podem
não estar nos lugares especificados, o processador deve pesquisar em toda a cache.
c) Associativo por conjunto:
R: As vantagens são a possibilidade de ter ganho de localidade temporal ainda tendo um custo
computacional relativamente pequeno quando comparando essas vantagens com os
mapeamentos extremos. As desvantagens são que, como o mapeamento divide a cache em
metade mapeamento direto e metade mapeamento totalmente associativo, o resultado é um
mapeamento nem tão rápido quanto completamente mapeamento direto ( porque na metade do
processamento totalmente associativo o processador ainda busca ‘metade da cache inteira’),
nem tão devagar quanto o mapeamento totalmente associativo (porque na metade de
mapeamento direto as informações são sobrescritas).

11. Cite quais são as fontes de misses de uma cache, porque acontecem e formas possíveis
de minimizá-los.
R: Os misses de uma cache podem ocorrer por alguns motivos, o principal deles é a cache
estar vazia, o processador procurar uma informação, e ter que ir para um nível mais profundo
da pirâmide para preencher a cache. Outro motivo é quando é utilizado o mapeamento direto,
assim, toda vez que ocorrer uma localidade temporal, será um mais uma vez que a informação
desejada já requerida no passado foi sobrescrita com a nova, mais recente informação
requerida. Para amenizar este problema podemos utilizar tanto o mapeamento associativo
quanto o totalmente associativo, sendo que no último o problema é resolvido mas gera outras
desvantagens já mencionadas. O problema de preencher a cache pode ser minimizado
dependendo em qual nível mais profundo será necessário recorrer-se para buscar as
informações, mas, de qualquer forma, a cache continuará inicializando-se vazia e recorrendo a
memórias mais profundas devido à volatilidade da mesma.

12. Explique as vantagens e desvantagens das estratégias de escrita write-through e


write-back:

13. O que é o “bit sujo” no esquema write-back?

14. Explique em que cenário um write miss ocorre e as estratégias utilizadas para lidar
com este evento.

15. Descreva o problema que haverá ao se utilizar um sistema com uma cache
juntamente do esquema de escrita write-through com buffer de escrita cuja
frequência das escritas é muito maior que o ciclo de escrita da memória DRAM.
Como resolver este problema? (Justifique)

16. Considerando um sistema de cache, responda as seguintes questões:

a) Durante uma operação de escrita na cache, o gerenciador da memória


cache pode utilizar uma das duas estratégias possíveis: write-through ou
write-back. Explique o funcionamento das duas estratégias.

b) Crie o fluxograma de uma cache write-through sem alocação de escrita.

Você também pode gostar