硬件-内存2

来源:互联网 发布:淘宝网店诈骗 编辑:程序博客网 时间:2024/05/16 13:03

缓存

 

 

缓存分3种:L1cache(一级缓存),L2cache(二级缓存)和L3cache(三级缓存)

 

 

L1cache(一级缓存)CPU内核集成的缓存称为一级缓存,而外部的称为二级缓存。一级缓存中还分数据缓存(Data CacheD-Cache)和指令缓存(Instruction CacheI-Cache

 

L2cache(二级缓存),是快速存储内存(基于SRAM),二级缓存也集成在CPU内核中。二级缓存是CPU性能表现的关键之一,在CPU核心不变化的情况下,增加二级缓存容量能使性能大幅度提高。

 

L3cache(三级缓存),CPU与主板之间的快速访问的缓存。(三级和四级缓存只在高端的服务器CPU)

 

电脑读取数据的时候先在CPU一级缓存里面寻找,找不到再到二级缓存中找,最后才到内存中寻找

 

缓存的机制

 

缓存的目的就是存储一些经常访问的指令和数据,以提高运算效率。为了保证CPU访问时有较高的命中率,缓存中的内容应该按一定的算法替换。这些都是CPU或者操作系统来管理。

 

缓存2个基本原理:时间局部性(temporal locality)和空间局部性(spatial locality

 

时间局部性是指如果程序中的某条指令一旦执行,则不久之后该指令可能再次被执行;如果某数据被访问,则不久之后该数据可能再次被访问。空间局部性空间局部性是指一旦程序访问了某个存储单元,则不久之后。其附近的存储单元也将被访问。

 

用在缓存的技术最基本的就是标记。缓存通过标记区分差别。当查询缓存里的一条数据是,首先比较的是标记,当查询成功时就缓存命中成功(hit),否则就是命中失败。为了保证CPU访问时有较高的命中率,缓存中的内容应该按一定的算法替换。一种较常用的算法是“最近最少使用算法”(LRU算法)。

 

 

参考:

 

(为什么CPU要分一级缓存、二级缓存和三级缓存),http://www.dnxxj.com/questions/4769808db21bc2/%0A为什么CPU要分一级缓存、二级缓存和三级缓存?.html

 

(CPU缓存一般分为哪两种), http://www.dnxxj.com/questions/476980cb399783/%0ACPU缓存一般分为哪两种.html

 

 

CPU缓存的问题),http://www.dnxxj.com/questions/47574b0cd44a52/CPU缓存的问题%3F%3F.html

0 0