SPMV稀疏矩阵向量乘笔记(4)
Speculative Segmented Sum for Sparse Matrix-V ector Multiplication on Heterogeneous Processors 浅读(3)
介绍了该论文的核心,改进的分段求和算法。
- 使用了一个脏位计数器通过rowpointer数组中是否有空行(通过判断是否有两个或以上连续的值),有一个空行就为1,两个就为2.并且还有一个数组记录了相应的空行偏移
- 先分开计算出所有非零元素相乘,再通过段二进制描述符(1,0,0,0,1,。。。。)求和,再放入最后的结果数组中
- 通过判断脏位,有空行使用1的数组来插入0到结果数组中,这就是最终结果
- 与之前的分段求和算法不同的是,它的结果是存放在原来的数组中,而不是新建的数组,所以还需要记录相关的索引。
- 代码并没有看懂,准备找找文中的其他介绍分段求和算法的论文看看。
文中的其他介绍分段求和算法的论文看看。