假设有一台计算机有三个缓存L1、L2(处理器内部)和L3(CPU外部)和一个RAM。现在假设CPU需要访问数据ABC进行一些操作,这些操作在RAM中肯定是可用的,但是由于架构-
CPU将首先检查L1缓存中的ABC,例如找不到它(因此缓存未命中-
反过来想,如果在L1中找到数据,那么它将比在L2和L3RAM情况下节省更多的时间。正如哈罗德指出的,L3现在不是CPU的外部。
就尺寸L1而言
这表明在RAM中搜索将比在L*缓存中搜索花费更多的时间。缓存就是为此目的引入的,即节省搜索时间。
正如你所说,有时是的,如果数据在L1、L2、L3中不存在,那么你需要访问RAM,但缓存会有一些损失,但数据会保存在缓存中以备将来访问。因此,缓存命中的优势超过了这一损失。
一般缓存命中率应该是/是90%,如果不是,则需要调整缓存策略。
我希望这是有帮助的。