当前位置: 代码迷 >> 综合 >> 《Bandwidth Reduced Parallel SpMV on the SW26010 Many-Core Platform》读后笔记
  详细解决方案

《Bandwidth Reduced Parallel SpMV on the SW26010 Many-Core Platform》读后笔记

热度:55   发布时间:2023-12-14 06:09:19.0

核心思路:1)通过轻工作量的预处理阶段,把矩阵A纵向从上到下分割成一个个的row-slice,划分后每个row-slice中的非零元个数大致相同。每个row-slice由一个CPE单独计算。

2)计算一个row-slice时,读取相应的x时使用动态前向规划技术避免取到无用的x,降低了带宽。

3)对CPE进行划分,同组CPE可以共享所需要的x,可进一步降低带宽。

4)设计了parameter auto-tuning框架(我理解就是测试套件),使得算法更适用于不同的矩阵。

5)运行时采用atomic-operation based work-sharing pool确保负载平衡,这项主要配合1)

下面是详细说明:

1)预处理阶段

MPE确定每个row-slice最多包含多少行、最多有多少个非零元后,对矩阵A进行一次遍历,遍历后的划分出的每个row-slice包含非零元个数大致相同。另外,row-slice中同一行的元素也是分批读取的。

2)如何避免取到无用的x

  相关解决方案