Page 34 - 《软件学报》2021年第8期
P. 34

2316                                   Journal of Software  软件学报 Vol.32, No.8,  August 2021



























                               Fig.5    Original row swap algorithm (a), and modified row swap procedure (b)
                                          图 5   原始行交换算法(a)及新的行交换算法(b)
                 6    实验与分析


                 6.1   单节点性能分析
                    首先针对单节点实验,分析评估各种优化方法的效果.根据平衡点理论,优化的目标是 GPU 尽可能地处于
                 高效工作状态,执行有效的计算,也即 GPU 尽可能地连续执行矩阵更新.图 6 对比了优化后单步循环的时间和
                 GPU 矩阵更新时间.图 6 给出了 1 个节点内 0 号进程的时间曲线.”A”表示当前行-当前列,”B”表示非当前行-非
                 当前列.可以看出,N=88320 情况下,LU 分解矩阵规模 56.09%之前单步循环时间接近 GPU 矩阵更新时间.56.09%
                 之后,当前进程执行 panel 分解,单步循环时间仍然接近 GPU 矩阵更新时间,GPU 大部分时间处于工作状态,说明
                 算法优化已经达到较好的效果.对于非当前 panel 分解进程,增加了等待 panel 广播数据的时间开销,GPU 有一段
                 时间处于空闲状态.





















                                            Fig.6    GPU time vs. total time of each loop
                                              图 6   GPU 时间与单步循环总时间
   29   30   31   32   33   34   35   36   37   38   39