Jeg ved hvordan man beregner CPI eller cyklusser pr. Instruktion fra hit and miss-forholdet, men jeg ved ikke nøjagtigt, hvordan jeg skal beregne miss ratio, der ville være 1 - hit ratio, hvis jeg ikke tager fejl. Jeg ved, at hit-forholdet beregnes ved at dividere hits / accesses, men problemet siger, at i betragtning af antallet af hits og misses, beregner du miss-forholdet.

Min begrundelse er, at det at have antallet af hits og misser vi har faktisk antallet af adgang = hits + misser, så den faktiske formel vil være:

hit_ratio = hits / (hits + misses)

Så missforholdet ville være

miss_ratio = 1 – hit_ratio

Hvis min ræsonnement er korrekt, ikke?

Hvad er hit og miss-latenstiden? Fordi jeg har brug for dem til at beregne mean access time ved hjælp af hit- og miss-forholdet og hit og miss-latenstiderne (i cyklusser) …

Svar

Ja. hit ratio er den brøkdel af adgang, der er et hit. missforholdet er den brøkdel af adgang, der er en miss. Det fastslår, at $$ \ text {miss rate} = 1- \ text {hit rate}. $$

(hit / miss) latency (AKA adgangstid) er den tid, det tager at hente data i tilfælde af et hit / miss. Hvis adgangen var et hit – er denne gang ret kort, fordi dataene allerede er i cachen. Men hvis det var en glip – er den tid meget, da L3-hukommelsen skal åbnes. Latenstiden afhænger af maskinens specifikation: cachehastigheden, hastigheden på den langsomme hukommelse osv.

Kommentarer

  • Kan du vis mig et simpelt eksempel på, hvordan ville du beregne mean access time, som jeg fortalte dig?
  • betyder adgangstid == den gennemsnitlige tid, det tager at få adgang til hukommelsen . Hvis det tager X-cykler for et hit, og Y cykler for et miss, og 30% af tiden er et hit (70% er derfor et miss) – > hvad er gennemsnittet (middel) tid det tager at få adgang ??
  • Nå, vi ved, at $ X * 0,30 $ er det samlede antal cyklusser, hvor vi har et hit, og at henholdsvis $ Y * 0,70 $ er det samlede antal antallet af cyklusser, hvor vi har en glip, derfor er det samlede antal cyklusser summen af begge: total_number_of_cycles = $ X * 0,30 $ + $ Y * 0,70 $. Men vi har stadig ikke et gennemsnit af noget, vi skal dele det i den samlede tid: mean_access_time = total_number_of_cycles / 1.0, er det ikke?
  • @RanG. Kan du se på mit cache-hit / miss-spørgsmål? cs.stackexchange.com/questions/43235/…

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *