Tudom, hogyan kell kiszámítani az utasításonkénti CPI vagy ciklusokat a találat és az elmaradás arányát, de nem tudom pontosan, hogyan kell kiszámolni azt a miss ratio számot, amely 1 - hit ratio lenne, ha nem tévedek. Tudom, hogy a találati arány kiszámítása a találatok / hozzáférések felosztásával történik, de a probléma azt mondja, hogy a találatok és a kihagyások számának figyelembevételével számítsuk ki a kihagyási arányt.

Az az érvem, hogy a találatok és a kihagyások számával valójában a hozzáférések száma = találatok + hiányzások vannak, tehát a tényleges képlet a következő lenne:

hit_ratio = hits / (hits + misses)

Tehát a kihagyási arány

miss_ratio = 1 – hit_ratio

Ha az érvelésem helyes, igaz?

Mi a találat és a hiányzó késés? Mert szükségem van rájuk, hogy kiszámítsák a mean access time -t a találat és a kihagyási arány, valamint a találat és a hiány késleltetései alapján (ciklusokban) …

Válasz

Igen. A találati arány a találatok töredéke. A kihagyási arány a hiányzó hozzáférések töredéke. Azt állítja, hogy $$ \ text {miss rate} = 1- \ text {hit rate}. $$

A (hit / miss) késés (AKA hozzáférési idő) az az idő, amely a adatok találat / hiányzás esetén. Ha a hozzáférés találat volt – ez az idő meglehetősen rövid, mert az adatok már a gyorsítótárban vannak. De ha ez hiányzó volt – ez az idő sokáig tart, mivel a (lassú) L3 memóriához hozzáférni kell. A késés a gép specifikációitól függ: a gyorsítótár sebességétől, a lassú memória sebességétől stb.

Megjegyzések

  • mutasson nekem egy egyszerű példát arra, hogy hogyan lehet kiszámítani az általam elmondott mean access time tartalmat?
  • jelenti a hozzáférési időt == a memória eléréséhez szükséges átlagos idő . Ha egy találathoz X ciklusra van szükség, az elmaradásra pedig Y ciklusra van szükség, és az idő 30% -a találat (tehát 70% az elmaradás) – > mekkora az átlag (átlag) a hozzáféréshez szükséges idő?
  • Nos, tudjuk, hogy az $ X * 0,30 $ az a ciklusok száma, ahol eltaláltunk, és hogy az $ Y * 0,70 $ az összes azoknak a ciklusoknak a száma, ahol van hiányunk, ezért az összes ciklus száma mindkettő összege: total_number_of_cycles = $ X * 0,30 $ + $ Y * 0,70 $. De még mindig nincs valamiről átlagunk, el kell osztanunk a teljes időre: mean_access_time = total_number_of_cycles / 1.0, igaz igaz?
  • @RanG. Megnézheti a gyorsítótárazott találat / hiány kérdésemet? cs.stackexchange.com/questions/43235/…

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük