Escreva a fórmula do tempo médio de acesso a memória (Average Memory Access Time AMAT) quando há dois níveis de cache L1 e L2.
Passo 1
Beleza, vamos lá! O exercício pede para escrever a fórmula do Tempo Médio de Acesso à Memória (AMAT) quando temos dois níveis de cache: L1 e L2. Isso faz parte do conteúdo de Arquitetura de Computadores, especificamente sobre hierarquia de memória. Para resolver, vamos precisar entender como os caches L1 e L2 influenciam no tempo de acesso à memória.
Passo 2
Primeiro, vamos entender o que é o Tempo Médio de Acesso à Memória (AMAT). Ele representa o tempo médio que o processador leva para acessar uma informação na memória, considerando possíveis acessos aos caches antes de ir para a memória principal.
Passo 3
Agora, vamos considerar o cache L1. O cache L1 é a memória mais rápida e mais próxima do processador, mas geralmente tem menor capacidade. O tempo para acessar o L1 chamamos de
.
Passo 4
Nem sempre a informação está no L1. A taxa de acertos no L1 é a probabilidade da informação estar lá. Se não estiver, temos uma taxa de falta no L1, que podemos chamar de
(Miss Rate 1).
Passo 5
Quando ocorre uma falta no L1 (
), o processador tenta acessar o cache L2. O tempo para acessar o L2 é
.
Passo 6
Assim como no L1, nem toda informação estará no L2. A taxa de falta no L2 é
.
Passo 7
Se a informação também não estiver no L2 (
), então o processador precisa acessar a memória principal, que tem um tempo de acesso
.
Passo 8
Juntando tudo isso, o Tempo Médio de Acesso à Memória (AMAT) considera:
- O tempo para acessar o L1.
- Se faltar no L1, adiciona o tempo para acessar o L2.
- Se faltar no L2 também, adiciona o tempo para acessar a memória principal.
Resposta
A fórmula do Tempo Médio de Acesso à Memória (AMAT) com dois níveis de cache
e
é:
Onde:
-
é o tempo de acesso ao cache L1. -
é a taxa de falta no cache L1. -
é o tempo de acesso ao cache L2. -
é a taxa de falta no cache L2. -
é o tempo de acesso à memória principal.
Exercícios relacionados
Considere um computador com um espaço de endereçamento de 12-bits (isto é, cada endereço de memória tem 12 bits de largura) e a memória é byte endereçável. A organização hierárquica de memória tem um cache de dados (
-cache) com capacidade de 8 blocos, onde cada bloco do cache é de 8 bytes (excluindo qualquer overhead).
Durante a execução de um determinado programa, o processador emite uma sequência de referências de leitura de memória. A string de referência de memória é demonstrada na sequência de endereços a seguir: 0x200, 0x204, 0x208, 0x20C, 0x2F4, 0x2F0, 0x200, 0x204, .
Este padrão de acesso é repetido quatro (4) vezes (como um laço que itera 4 vezes).
a) Simule a execução do fragmento de código ilustrado acima, considerando a organização de memória descrita e apresente como resposta a configuração final do cache após a execução de cada iteração do laço. Considere que o cache está inicialmente vazio (limpo) e com função de mapeamento direto. Calcule a taxa de acerto (hit rate) da execução.
b) Repita o item (a), considerando um cache de mapeamento totalmente associativo e algoritmo de substituição LRU.
c) Repita o item (a), considerando um cache de mapeamento associativo por conjunto de 4vias e algoritmo de substituição LRU.
Durante a execução de um determinado programa, o processador emite uma sequência de referências de leitura de memória. A string de referência de memória é demonstrada na sequência de endereços a seguir: 0x200, 0x204, 0x208, 0x20C, 0x2F4, 0x2F0, 0x200, 0x204,
Este padrão de acesso é repetido quatro (4) vezes (como um laço que itera 4 vezes).
a) Simule a execução do fragmento de código ilustrado acima, considerando a organização de memória descrita e apresente como resposta a configuração final do cache após a execução de cada iteração do laço. Considere que o cache está inicialmente vazio (limpo) e com função de mapeamento direto. Calcule a taxa de acerto (hit rate) da execução.
b) Repita o item (a), considerando um cache de mapeamento totalmente associativo e algoritmo de substituição LRU.
c) Repita o item (a), considerando um cache de mapeamento associativo por conjunto de 4vias e algoritmo de substituição LRU.
Por que um cache de segundo ou terceiro nível é útil? Que tipo de benefícios proporciona ao desempenho do sistema?
a) Explique como isso afeta o cálculo do tempo médio de acesso à memória (AMAT).
b) Quais outras técnicas de aprimoramento de cache podem fornecer uma solução para o mesmo problema?
a) Explique como isso afeta o cálculo do tempo médio de acesso à memória (AMAT).
b) Quais outras técnicas de aprimoramento de cache podem fornecer uma solução para o mesmo problema?
O que significam princípio da localidade da referência, princípio da inclusão e princípio da coerência cache na organização hierárquica de memória?
Defina o que é um cache com política de escrita write-through? Essa política é mais rápida/mais lenta do que um cache com política write-back em relação ao tempo que consome nas operações de escrita.