記憶體階層與效能

即使將快取改為全相聯方式也不會減少的未命中,下列何者正確?

  1. A兩筆資料爭奪同一組、互相逐出所造成的未命中
  2. B使用的資料量大於快取容量所造成的未命中
  3. C直接映射的配置不均所造成的未命中
查看答案與解析

正確答案:B. 使用的資料量大於快取容量所造成的未命中

在全相聯方式中,任何資料都能放在任何位置,因此爭奪同一組所造成的衝突未命中會消失。然而,若程式反覆使用的資料量(工作集)大於整個快取,不論放在哪裡都放不下而會發生逐出。這就是容量未命中,必須加大快取,或藉由迴圈分塊(loop blocking)等縮小重複使用的範圍。配置不均或爭奪組,兩者都是衝突未命中的原因。

  • A. 爭奪組是衝突未命中,改為全相聯就會消失。
  • B. 正確。工作集溢出的容量未命中仍會殘留。
  • C. 配置不均所造成的未命中也是衝突未命中的一種。
練習這個領域 前往領域頁面

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

  1. 加大快取的快取行大小時所產生的影響,下列何者正確?
  2. 在直寫(write-through)快取中,設置寫入緩衝器(write buffer)的主要目的為下列何者?
  3. 在寫回(write-back)快取中,附加於各快取行的髒位元(dirty bit)的作用,下列何者正確?
  4. 寫入時發生快取未命中,不載入該快取行而直接寫入下一層階層的方式為下列何者?
  5. 容量為2條快取行、採LRU替換的全相聯快取一開始為空,依A、B、A、C、B、A的順序參照區塊時,會發生幾次未命中?

這個領域的比較