一、CPU组成&三级缓存

1、汇编

2、CPU的基本组成

PC : Program Countor程序计数器(记录当前指令地址)

Register :寄存器 ,暂时存储CPU计算所用到的数据

ALU : Arithmetic & Logic Unit 运算单元

CU : Control Unit 控制单元

MMU : Mermory Management Unit 内存管理单元

Cache : 缓存

单核多线程模型

一个运算单元对应2组或多组寄存器。减少上下文切换

Cache 模型

缓存效率

cpu从缓存中存取数据的快慢从高到低

缓存存取数据时间对比

三级缓存的位置

同一个核共享L1。L2 同一颗CPU共享L3 。多颗CPU共享主存

块读取。缓存行(Cache Line)

cup从缓存中按块存取,

程序局部性原理,可以提高效率

充分发挥总线cpu针脚一次性读取更多数据的能力

缓存行对齐

对于有些敏感的数字,会存在线程高竞争,为了保证不发生伪共享,可以使用缓存行对齐的编程方式

列子:disruptor队列

JDK8缓存行对齐 @Contended

需要加上 JVM -XX: -RestrictContended

缓存一致性

Inter的缓存一致性协议

当一个行数据一个cpu中的状态时Modified时,在另一个为Invalid 不能同时生效

三级缓存计算机体系结构中的一种层次化缓存结构,用于提高计算机系统的性能和响应速度。 第一级缓存CPU内部的高速缓存,也叫做L1缓存。它直接集成在CPU芯片中,与CPU同步工作,速度非常快,但容量较小。L1缓存通常以字节为单位,用于存储指令和数据块,供CPU快速读取或写入,以减少对主存的访问次数。 第二级缓存是位于CPU与主存之间的缓存,也叫做L2缓存。它的容量比L1缓存大,速度相对较慢,但仍远快于主存。L2缓存可以缓存L1缓存无法容纳的数据块,提供更多的数据访问并减少对主存的访问延迟。 第三级缓存是位于CPU和主存之间的更大容量的高速缓存,也叫做L3缓存。它主要用于降低对主存的访问频率和延迟,提高整体系统的性能。L3缓存通常由多个缓存模块组成,每个模块包含自己的控制器和存储单元,可以独立读取和写入数据。 由于三级缓存层次结构依次增大容量、降低成本并逐渐扩大访问延迟,数据从L1缓存到L3缓存的访问速度依次减慢。 CPU在访问数据时会先尝试访问L1缓存,如果未命中,则会依次向下尝试访问L2缓存和L3缓存。当数据在L3缓存中未命中时,CPU将从主存中获取数据,并将其存储在L3缓存中以供后续使用。 三级缓存的引入可以大大提高计算机系统的性能,减少对主存的访问次数,缓解主存带宽的压力,并且可以根据不同的应用需求进行灵活配置,从而优化系统性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值