计算机工程与科学 ›› 2024, Vol. 46 ›› Issue (07): 1175-1184.
施禹1,董攀1,张利军2
SHI Yu1,DONG Pan1,ZHANG Li-jun2
摘要: 稀疏矩阵-向量乘法SpMV是高性能计算领域的关键算子之一,在新兴的深度学习领域中有着重要应用。现有SpMV算子通常采用行列相等的稀疏矩阵,而对于不规则形状稀疏矩阵(行数与列数不等)的研究仍存在空缺,值得进一步深入探讨。相比于行列相等的稀疏矩阵,不规则形状稀疏矩阵凭借其行数与列数不对等的稀疏特点具有进一步优化的空间。因此,针对这种行数与列数不对等的不规则形状稀疏矩阵建立SpMV性能模型,分析得到其出现性能瓶颈的原因在于缓存和内存之间数据交互的带宽不足。同时做了以下2个方面的优化工作:(1)基于常用稀疏矩阵CSR存储格式,提出新型RCSR存储格式,其针对CSR存储格式中一个制约性能的数组进行了变换和压缩,使得SpMV更加高效;(2)结合国产处理器的SIMD指令扩展设计了基于RCSR格式的SpMV优化算法。在国产飞腾处理器上分别使用规则和不规则稀疏矩阵进行测试,在规则稀疏矩阵的情况下,通过采用RCSR存储格式和SIMD加速指令集,以GFLOPS为性能指标,实现了平均83.35%的性能提升;在不规则稀疏矩阵的情况下,性能提升与行列比相关,在行列不对等加剧时,具有更为明显的优化效果。