Jeg vet hvordan jeg skal beregne CPI eller sykluser per instruksjon fra hit and miss-forholdet, men jeg vet ikke nøyaktig hvordan jeg skal beregne miss ratio som ville være 1 - hit ratio hvis jeg ikke tar feil. Jeg vet at treffforholdet er beregnet som delende treff / tilgang, men problemet sier at gitt antall treff og savner, beregne glippforholdet.

Min begrunnelse er at det å ha antall treff og glipp, vi har faktisk antall tilganger = treff + savner, så den faktiske formelen vil være:

hit_ratio = hits / (hits + misses)

Så savningsforholdet ville være

miss_ratio = 1 – hit_ratio

Hvis resonnementet mitt er riktig, ikke sant?

Hva er treff og forsinkelser? Fordi jeg trenger dem til å beregne mean access time ved hjelp av treff- og glippforhold og treff og glippforsinkelser (i sykluser) …

Svar

Ja. hit ratio er brøkdelen av tilganger som er en hit. glippforholdet er brøkdelen av tilganger som er glipp. Den hevder at $$ \ text {miss rate} = 1- \ text {hit rate}. $$

(hit / miss) latency (AKA access time) er tiden det tar å hente data i tilfelle en hit / miss. Hvis tilgangen var en hit – denne gangen er ganske kort fordi dataene allerede er i hurtigbufferen. Men hvis det var en glipp – den tiden er mye hengende da L3-minnet må nås. Tiden avhenger av maskinens spesifikasjoner: hurtigbufferen, hastigheten på tregt minne osv.

Kommentarer

  • Kan du vis meg et enkelt eksempel på hvordan vil du beregne mean access time som jeg har fortalt deg?
  • betyr tilgangstid == gjennomsnittlig tid det tar å få tilgang til minnet . Hvis det tar X-sykluser for et treff, og Y-sykluser for et glipp, og 30% av tiden er et treff (dermed er 70% et glipp) – > hva er gjennomsnittet (middel) tid det tar å få tilgang til ??
  • Vel, vi vet at $ X * 0,30 $ er det totale antallet sykluser der vi har en hit, og at henholdsvis $ Y * 0,70 $ er det totale antall sykluser der vi har en glipp, derfor er totalt antall sykluser summen av begge: total_number_of_cycles = $ X * 0,30 $ + $ Y * 0,70 $. Men vi har fortsatt ikke et gjennomsnitt på noe, vi må dele det for hele tiden: mean_access_time = total_number_of_cycles / 1.0, er det ikke sant?
  • @RanG. Kan du se på caching hit / miss-spørsmålet mitt? cs.stackexchange.com/questions/43235/…

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *