Considerando um computador com uma hierarquia de memória multinível (cache L1, L2 e L3) com os seguintes parâmetros: Frequência do clock do processador =1 GHz; HitTime L 1=1 clock cycle; HitRate L 1=85 %; HitTime L 2=4 clock cycles; HitRate L 2=72 %; HitTime L 3=8 clock cycles; HitRate llcorner 3=90 %; MissPenalty L3=50 clock cycles;
a) Quanto é a taxa de falha global (Global Miss Rate) para o cache de último nível?
b) Quanto custa o MissPenalty L2 ?
c) Quanto custa o MissPenalty LtLI ?
d) Quanto é o AMAT (Average Memory Access Time)?

Passo 1

Beleza, vamos resolver esse exercício sobre hierarquia de memória em computadores. A questão fala sobre caches L1, L2 e L3, e queremos calcular algumas coisas como taxa de falha global, penalidades de miss e o AMAT (Tempo Médio de Acesso à Memória). Para resolver isso, vamos precisar entender conceitos como hit rate (taxa de acerto), hit time (tempo de acerto), miss rate (taxa de falha) e miss penalty (penalidade de falha). Vamos por partes!

Passo 2

Vamos começar com a parte a): Quanto é a taxa de falha global (Global Miss Rate) para o cache de último nível?
Primeiro, precisamos entender que a taxa de falha global é a probabilidade de uma dada requisição de memória não ser atendida por nenhum dos caches intermediários, chegando até a memória principal. Para calcular isso, usamos as taxas de falha (miss rates) de cada nível de cache.
A fórmula para a taxa de falha global ( MRglobal = MRL1 times MRL2 times MRL3 ) é:
Onde:
  • é a taxa de falha do cache L1.
  • é a taxa de falha do cache L2.
  • é a taxa de falha do cache L3.
Sabemos que:
  • HitRate então MissRate
  • HitRate então MissRate
  • HitRate então MissRate

Passo 3

Agora, vamos aplicar os valores na fórmula:
MRglobal = 0.15 times 0.28 times 0.10
Fazendo as contas:
MRglobal = 0.15 times 0.28 = 0.042
MRglobal = 0.042 times 0.10 = 0.0042
Ou seja, a taxa de falha global é de 0.42%.

Passo 4

Passando para a parte b): Quanto custa o MissPenalty MPL2 = HitTimeL3 + MPL3 ?
O MissPenalty de um nível de cache é o tempo adicional que leva para buscar os dados no próximo nível de memória quando ocorre um miss. Para o cache L2, isso significa o tempo necessário para acessar o L3 mais o tempo de penalidade do L3.
A fórmula para o MissPenalty do L2 ( ) é:
Sabemos que:
  • HitTime ciclos
  • MissPenalty ciclos

Passo 5

Substituindo os valores na fórmula:
MPL2 = 8 + 50 = 58 ciclos
Então, o MissPenalty do L2 é de 58 ciclos.

Passo 6

Agora, a parte c): Quanto custa o MissPenalty MPL1 = HitTimeL2 + MPL2 ?
Similarmente, o MissPenalty do L1 ( ) envolve o tempo de acesso ao L2 mais a penalidade do L2.
A fórmula é:
Sabemos que:
  • HitTime ciclos
  • MissPenalty ciclos (calculado anteriormente)

Passo 7

Aplicando os valores:
MPL1 = 4 + 58 = 62 ciclos
Portanto, o MissPenalty do L1 é de 62 ciclos.

Passo 8

Finalmente, a parte d): Quanto é o AMAT (Average Memory Access Time)?
O AMAT é o tempo médio que leva para acessar a memória considerando os possíveis acertos e falhas em cada nível de cache. A fórmula geral é:
AMAT = HitTimeL1 + (MRL1 times (HitTimeL2 + MRL2 times (HitTimeL3 + MRL3 times MissPena
Mas uma forma simplificada, considerando os MissPenalties já calculados, fica:
AMAT = HitTimeL1 + (MRL1 times MPL1)
Sabemos que:
  • HitTime ciclo
  • MissRate
  • MissPenalty ciclos

Passo 9

Substituindo na fórmula:
AMAT = 1 + (0.15 times 62) = 1 + 9.3 = 10.3 ciclos
Então, o AMAT é de 10.3 ciclos.

Resposta

a) A taxa de falha global para o cache de último nível é de 0,42%.
b) O MissPenalty custa 58 ciclos.
c) O MissPenalty custa 62 ciclos.
d) O AMAT (Average Memory Access Time) é de 10,3 ciclos.

Exercícios relacionados