Elabore uma questão livre sobre o assunto memórias.

Passo 1

Enunciado da questão (criada por mim):
Considere uma hierarquia de memória com dois níveis de cache seguida de memória principal. Os parâmetros são:
\begin{aligned} \text{Tempo de acesso do cache L1 (hit time)} &= 1\\ \text{ns},\\\ \text{taxa de acerto do L1 (hit rate)} &= 95\%,\\\ \text{Tempo de acesso do cache L2 (hit time)} &= 5\\ \text{ns},\\\ \text{taxa de acerto do L2 (condicional ao acesso ao L2)} &= 90\%,\\\ \text{Tempo de acesso da memória principal (quando L2 falha)} &= 100\\ \text{ns}. \end{aligned}ó
Pergunta: Calcule o tempo médio de acesso efetivo à memória (AMAT — Average Memory Access Time) nessa hierarquia. Apresente o resultado em \text{ns}.

Passo 2

O que a pergunta pede e as informações relevantes:
Ela pede o tempo médio de acesso efetivo (AMAT) — isto é, quanto tempo, em média, leva para um acesso de memória terminar considerando acertos e faltas (hits e misses) nos caches. As informações relevantes são os tempos de acesso ( 1\\ \text{ns}, 5\\ \text{ns}, 100\\ \text{ns}) e as taxas de acerto ( 95\% no L1, 90\% no L2 conditional ao L1 miss). Não há outras informações ocultas.

Passo 3

Conceitos fundamentais (mini-aula leve e prática):
  • Hit (acerto): quando o dado procurado está no nível de cache consultado; responde no tempo de hit.
  • Miss (falta): quando o dado não está no nível consultado; há que buscar no próximo nível, incorrendo em miss penalty (penalidade).
  • Fórmula padrão para duas camadas (L1 seguido por L2): \text{AMAT} = \text{HitTime}_{L1} + \text{MissRate}_{L1} \times \text{MissPenalty}_{L1}.Aqui \text{MissRate}_{L1} = 1 - \text{HitRate}_{L1}.
  • A penalidade de falta do L1 ( \text{MissPenalty}_{L1}) é o tempo adicional gasto quando L1 falta: acessar L2 e, se L2 também faltar, acessar memória principal. Podemos escrever: \text{MissPenalty}_{L1} = \text{HitTime}_{L2} + \text{MissRate}_{L2} \times \text{MissPenalty}_{L2},onde \text{MissRate}_{L2} = 1 - \text{HitRate}_{L2} e \text{MissPenalty}_{L2} aqui é simplesmente o tempo de acessar a memória principal (já que após falhar no L2 vamos à memória).

Passo 4

Tradução dos dados numéricos para probabilidades e taxas:
  • \text{HitRate}_{L1} = 0,95 \Rightarrow \text{MissRate}_{L1} = 0,05.
  • \text{HitRate}_{L2} = 0,90 \Rightarrow \text{MissRate}_{L2} = 0,10.
  • \text{HitTime}_{L1} = 1\\ \text{ns},\quad \text{HitTime}_{L2} = 5\\ \text{ns},\quad \text{MissPenalty}_{L2} = 100\\ \text{ns}.

Passo 5

Calcular a penalidade de falta do L1 ( \text{MissPenalty}_{L1}) aplicando a fórmula do Passo 3:
\text{MissPenalty}_{L1} = \text{HitTime}_{L2} + \text{MissRate}_{L2}\times \text{MissPenalty}_{L2}.
Substituindo os números:
\text{MissPenalty}_{L1} = 5\\ \text{ns} + 0,10 \times 100\\ \text{ns}.
Calcule o termo:
0,10 \times 100\\ \text{ns} = 10\\ \text{ns}.
Logo:
\text{MissPenalty}_{L1} = 5\\ \text{ns} + 10\\ \text{ns} = 15\\ \text{ns}.

Passo 6

Calcular a \text{AMAT} usando a fórmula:
\text{AMAT} = \text{HitTime}_{L1} + \text{MissRate}_{L1} \times \text{MissPenalty}_{L1}.
Substituindo:
\text{AMAT} = 1\\ \text{ns} + 0,05 \times 15\\ \text{ns}.
Calcule o produto:
0,05 \times 15\\ \text{ns} = 0,75\\ \text{ns}.
Portanto:
\text{AMAT} = 1\\ \text{ns} + 0,75\\ \text{ns} = 1,75\\ \text{ns}.

Passo 7

Interpretação rápida e dica de prova (amigo explicando):
O resultado \text{AMAT}=1,75\\ \text{ns} significa que, mesmo com a memória principal demorando 100\\ \text{ns}, a combinação de altas taxas de acerto em L1 e L2 faz com que o tempo médio fique bem próximo do tempo de acesso do L1. Em prova, memorize a forma matricial da conta: primeiro compute a penalidade de falta do nível imediatamente abaixo, depois coloque na fórmula do nível acima — assim você não se perde quando há 3+ níveis.

Resposta

\,1,75\\ \text{ns}

Exercícios relacionados