第 9 集:高级 CPU 设计,缓存

博客介绍了提升CPU速度的多种方式,早期是加快晶体管切换速度,还可添加专门电路、加缓存等。提到缓存的相关概念,如脏位。阐述了CPU并行处理及带来的问题,包括指令依赖和条件跳转,对应解决方法有乱序执行、推测执行和分支预测,还介绍了多核CPU和超级计算机。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

00:24 早期是加快晶体管切换速度,来提升 CPU 速度

01:20 给 CPU 专门的除法电路 + 其他电路来做复杂操作,比如游戏,视频解码

02:28 给 CPU 加缓存,提高数据存取速度,更快喂给 CPU,用计算餐馆销售额举例

05:13 脏位 - Dirty bit

05:33 流水线设计,用 1 个洗衣机和 1 个干燥机举例

06:01 并行处理 - parallelize

07:33 乱序执行 - out-of-order execution

08:21 推测执行 - speculative execution

08:50 分支预测 - branch prediction

09:34 多个 ALU

09:54 多核 (Core)

10:11 多个独立 CPU

10:52 超级计算机,中国的"神威 太湖之光"

 

 

缓存:

CPU已经很强大,而RAM与CPU 的传输速度却没有提高,所以直接在CPU中内嵌一个RAM,叫做“缓存”

 

缓存命中/缓存未命中

 

脏位:dirty bit

当缓存中产生中间值(比如复杂运算时,会先算出一个值,先存起来后面会用到)时,缓存的数据与RAM中就不一致了(因为RAM中没有这个中间值)

这种不一致需要记录下来,之后要同步。因此缓存里每块空间有一个特殊标记,叫做“脏位”

 

异步与同步:

当“缓存”满了而CPU又需要缓存时,会检查“”脏位,如果是脏的会把数据先写回RAM,然后再清理缓存,加载新的内容

 

CPU并行:

CPU内的不同部分并行处理,使单个时钟周期可以处理一条指令

 

 

CPU并行带来的问题:

1.指令之间的依赖关系。

高端CPU会将有依赖关系的指令进行动态排序,叫做“乱序执行”

2.条件跳转

某些跳转指令会让CPU空等(要等跳转之后的结果再继续执行指令)而造成延迟。

高端CPU会“推测执行”。先进行推测,把指令排好,如果结果正确,则直接执行排好的指令;如果错误,就会清空排好的指令。

为了增加推测的正确性,CPU厂商用复杂的方法开发了“分支预测”

 

超标量处理器 —— 多核CPU

 

超级计算机

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值