Cache Calcolo del tempo di accesso effettivo
-
05-11-2019 - |
Domanda
Al fine di calcolare il tempo di accesso effettivo di un sottosistema di memoria, vedo alcuni approcci diversi, AKA Formule. Tutti sono ragionevoli, ma non so come differiscono e qual è quello corretto.
Assumi una cache a due livelli e un sistema di memoria principale con le seguenti specifiche:
h1 = 80% t1 = 10ns L1 cache
h2 = 40% t2 = 20ns L2 cache
h3 = 100% t3 = 100ns Main memory
t1
significa il tempo per accedere alla L1 mentre t2
e t3
significa la penalità per accedere a L2 e memoria principale, rispettivamente.
Vedo due formule come descritto di seguito:
1- Teff = t1 + (1-h1)[t2 + (1-h2)t3]
che sarà 32. La logica dietro è di accedere a L1, prima. Quindi, T1 è sempre considerato. Quindi con il rapporto MISS di L1, accediamo ai livelli più bassi e questo viene ripetuto in modo ricorsivo. Sono age con questo! Puoi vedere ulteriori dettagli qui.
2- come discusso qui, possiamo calcolarlo usando Teff = h1*t1 + (1-h1)*h2*t2 + (1-h1)*(1-h2)*t3
quali rendono 24. Tuttavia, è ragionevole quando diciamo che si accede a L1 a volte. Puoi vedere un altro esempio qui. Sebbene ciò possa essere considerato un'architettura, ma sappiamo che L1 è il primo posto per la ricerca di dati. Quindi, il tempo L1 dovrebbe essere sempre considerato.
C'è qualche suggerimento per questo?
Nessuna soluzione corretta