学习日记-spmv(25)

SPMV稀疏矩阵向量乘笔记(25)

Merge-based Parallel Sparse Matrix-Vector Multiplication 浅读 (1)

INTRODUCTION

  • 表明gpu上的spmv算法已经非常多了,但是鉴于更换存储格式来提升性能的代价太大,所以基本上都还是使用通用的编码csr,因为csr没有特定于体系结构的阻塞,已经重排等等。
  • 并且新的存储格式有两个问题:一是检查和格式化的预处理时间,甚至于该耗时是spmv操作的许多倍,二是因为csr格式的矩阵需要被其他程序所需要,所以需要额外的存储开销
  • csrmv的并行操作,因为不规则的行长导致性能下降,尽管有各种限制不平衡的方法,但是对于samll-world或scale-free数据集表现通常不佳,因为存在少数行比平均数据长多个数量级
  • 该文算法的中心思想主要是将并行CsrMV分解构建为两个列表的逻辑合并:
    • A:row-offsets(The row descriptors)
    • B:CSR非零元的索引(The natural numbers)

csrmv

BACKGROUND

  • 先介绍了通用存储格式,并且表明优缺点
  • 提出特殊存储格式,并且表诉相关工作和优缺点。
  • 目前的csrmv并行策略
    • 行分布:将长行分配给多处理器,但是短行不处理,这样小于规定大小的行也会导致负载不均衡。长行的分割可以静态的完成,也可以动态的完成。向量化是行分割的一种常见变体,它将一组线程分配给处理每一行。(看不懂)动态变体需要运行时任务分布,这种行为可能导致处理器争用,并且在大规模并行系统上限制可伸缩性
    • 非零元分布:先把非零元均匀分布给thread,然后通过row_offsets来判断属于哪一行,最后来合并
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值