記憶體階層與效能

L1快取的命中時間為1 ns、未命中率為5%,L2快取的命中時間為10 ns、L2的區域未命中率為20%,主記憶體的存取時間為100 ns時,平均記憶體存取時間為多少?

  1. A2.0 ns
  2. B2.5 ns
  3. C6.0 ns
查看答案與解析

正確答案:B. 2.5 ns

L1的未命中代價,是L2的平均存取時間 10 + 0.2 × 100 = 30 ns。因此平均記憶體存取時間為 1 + 0.05 × 30 = 1 + 1.5 = 2.5 ns。2.0 ns是漏加L2的命中時間10 ns、算成 1 + 0.05 × (0.2 × 100) 的值。6.0 ns是把主記憶體的100 ns直接乘上L1的未命中率再相加的值,忽略了L2的效果。

  • A. 2.0 ns是漏加L2命中時間的值。
  • B. 正確。1 + 0.05 × (10 + 0.2 × 100) = 2.5 ns。
  • C. 6.0 ns是忽略L2、直接乘上主記憶體時間的值。
練習這個領域 前往領域頁面

記憶體階層與效能的其他題目

  1. 在直接映射快取中,兩個陣列的元素對應到快取的同一個位置,每次交替存取時就互相把對方逐出。這種未命中屬於哪一類?
  2. 作為減少程式第一次存取某資料時所發生的快取未命中的方法,下列何者有效?
  3. 即使將快取改為全相聯方式也不會減少的未命中,下列何者正確?
  4. 加大快取的快取行大小時所產生的影響,下列何者正確?
  5. 在直寫(write-through)快取中,設置寫入緩衝器(write buffer)的主要目的為下列何者?

這個領域的比較