2017-07-07 15 views
0

L1とL2の2つのキャッシュがあり、L1が第1レベルのキャッシュで、L2が下位レベルのキャッシュである場合。 L1にミスがあり、L2にヒットがあるとします。 L2から必要なブロックをL1に移動し、L1から必要なバイトにアクセスするか、L2から必要なバイトに直接アクセスする必要がありますか?複数レベルのキャッシュアクセス時間

平均アクセス時間を与えることができるよう - H1(T1)+(1-H1)、(H2)

H1(T1 + T2):L1キャッシュのヒット率、 T1:アクセス時間のL1、 h2:L2キャッシュのヒット率、 t2:L2のアクセス時間。

答えて

1

私たちはL2から直接アクセスすることができますが、次回アクセスが高速になるように、L1にもアクセスします。

+0

L1のミス時にL2からアクセスしようとすると、再び時間t1を追加するのはなぜですか?それはL2から直接アクセスできるので、ちょうどt2だけでなければなりません – Zephyr

+0

それはアーキテクチャに依存します。新しいアーキテクチャーはすべてのレベルのキャッシュに同時にアクセスするため、その時間ペナルティーを支払う必要はなく、t2を適用するだけです。古いアーキテクチャでは、まずL1をチェックし、それがなければL2をチェックします。したがって、あなたは両方の時間のペナルティを支払わなければならないでしょう。 – GreatA1exander

+0

ここのt1は私が推測するチェック時間ではありません。バイトを読むのに必要な時間です。 – Zephyr