Jag vet hur man beräknar CPI
eller cykler per instruktion från hit and miss-förhållandena, men jag vet inte exakt hur man beräknar miss ratio
som skulle vara 1 - hit ratio
om jag inte har fel. Jag vet att träffförhållandet beräknas dividera träffar / åtkomst, men problemet säger att med tanke på antalet träffar och missar, beräkna missförhållandet.
Mitt resonemang är att ha antalet träffar och missar, vi har faktiskt antalet access = hits + missar, så den faktiska formeln skulle vara:
hit_ratio = hits / (hits + misses)
Så missförhållandet skulle vara
miss_ratio = 1 – hit_ratio
Om mitt resonemang är korrekt, eller hur?
Vad är träff och missfördröjning? Eftersom jag behöver dem för att beräkna mean access time
med hjälp av träff- och missförhållandena och träff och missfördröjningar (i cykler) …
Svara
Ja. träffförhållandet är den bråkdel av åtkomst som är en träff. missförhållandet är den bråkdel av åtkomst som är miss. Det hävdar att $$ \ text {miss rate} = 1- \ text {hit rate}. $$
Latens (hit / miss) (AKA access time) är den tid det tar att hämta data vid en träff / miss. Om åtkomsten var en hit – den här gången är ganska kort eftersom data redan finns i cachen. Men om det var en miss – den tiden är mycket kvar eftersom det (långsamma) L3-minnet måste nås. Latens beror på maskinens specifikation: cacheminnets hastighet, det långsamma minnets hastighet osv.
mean access time
som jag sa till dig?total_number_of_cycles
= $ X * 0,30 $ + $ Y * 0,70 $. Men vi har fortfarande inte ett genomsnitt av något, vi måste dela det för hela tiden:mean_access_time
=total_number_of_cycles
/ 1.0, är det eller hur?