数据设计、性能模型与并行算法
1. 压缩稀疏表示的优势
压缩稀疏表示在内存和性能方面都有显著优势。对于以单元为中心的数据结构适用的内核,以单元为中心的压缩稀疏数据结构在内存和运行时间上表现最佳;对于以材料为中心的数据布局的内核,以材料为中心的数据结构略占优势。但总体而言,压缩稀疏表示相较于全矩阵表示有巨大改进。很多处理稀疏数据的应用都能从压缩稀疏数据结构中受益,可通过简单的性能分析判断是否值得为此付出额外努力。
2. 高级性能模型
2.1 模型概述
存在更高级的性能模型能更好地反映计算机硬件特性。在分析带宽受限的内核时,以往按字节和字计数来估算数据移动时间,而计算机硬件的操作单元实际是缓存行,因此可以通过计算需要加载和存储的缓存行来改进性能模型,同时估算缓存行的使用情况。
2.2 流基准测试的问题
流基准测试由复制、缩放、加法和三元组四个内核组成,但各内核带宽存在差异(16156.6 - 22086.5 MB/s)。以往认为是算术强度差异导致,但在带宽受限的情况下,算术运算的小差异影响较小,与算术运算的相关性也不高。缩放操作带宽最低的真正原因是系统缓存层次结构的细节。缓存系统不像流基准测试所暗示的那样像稳定流水的管道,更像图 4.21 所示的桶式接力,不同层次以不同数量和大小的“桶”传递数据。
graph LR
DRAM(DRAM) --> L3(L3缓存)
L3 --> L2(L2缓存)
L2 --> L1(L1缓存)
L1 --> Registers(寄存器)
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



