13、简单性能模型:案例研究

简单性能模型:案例研究

1. 性能模型基础

在性能分析中,冷缓存是指在进入内核之前,其中没有任何与当前操作相关的数据的缓存。当缓存为冷缓存时,内核的表现可能优于强制限制。大圆点与强制限制之间的距离可以让我们了解该内核中缓存的有效性。在某个简单内核中,容量和冲突缓存加载仅比强制缓存加载大约高 15%,这表明该内核性能提升的空间不大。而大圆点与 DRAM 屋顶线之间的距离,是因为这是一个带有向量化的串行内核,而屋顶线是使用 OpenMP 的并行内核,因此可以通过添加并行性来提升性能。

由于采用对数 - 对数绘图,差异可能比看起来更大。仔细观察,并行性带来的性能提升几乎有一个数量级。改善缓存使用可以通过使用缓存行中的其他值,或者在数据位于缓存中时多次重用数据来实现,这分别对应空间局部性和时间局部性:
- 空间局部性:指内存中位置相邻的数据经常被一起引用。
- 时间局部性:指最近被引用的数据在不久的将来很可能再次被引用。

例如,在模板内核中,当 x[1][1] 的值被带入缓存时, x[1][2] 也会被带入缓存,这就是空间局部性。在计算 x[1][2] 的下一次循环迭代中,需要用到 x[1][1] ,它应该仍在缓存中并被重用,这就是时间局部性的例子。

此外,还引入了一个新的概念——一致性。一致性适用于多处理器之间同步缓存所需的缓存更新,当写入一个处理器缓存的数据也存在于另一个处理器的缓存中时,就需要进行这些更新。为保持一致性而进行的缓存更新有时会导致内存总线上的流量过大,被称为缓存更新风暴。在并行作业中添加额外的处理器时,这些缓存

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值