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

蔡雨  等:异构 HPL 算法中 CPU 端高性能 BLAS 库优化                                              2303

















                                       Fig.12    DGEMM efficiency comparison of single-core
                                                图 12   单核 DGEMM 效率对比















                                        Fig.13    DGEMM efficiency comparison of 32 cores
                                               图 13   32 核 DGEMM 效率对比

                 5.3   异构HPL测试
                    HPL 实测性能值是最终评价标准,分别统计每个 BLAS 函数的时间作为 BLAS 优化的评价标准.为避免网
                 络通信的干扰,本文基于单节点进行异构 HPL 测试,对比包括 panel 分解中 pfact 时间以及 HPL 算法中使用的
                 7 个 BLAS 函数 DGEMM、DGEMV、DTRSM、DTRSV、IDMAX、DSCAL 和 DCOPY 的计算时间.
                    异构 HPL 算法 panel 分解部分主要在 CPU 端进行计算.如图 14 左侧所示为 HPL 程序 panel 分解中的 pfact
                 总时间统计,调用 HBLIS 的 pfact 与调用 MKL 的相比,计算时间节省了 53%.如图 14 右侧所示为 DGEMM 函数
                 计算时间统计,可以看到,HBLIS 的 DGEMM 性能比 MKL 的 DGEMM 性能提升了约 25%.















                   Fig.14    Performance comparison of pfact and DGEMM calling different math libraries in heterogeneous HPL
                                 图 14   异构 HPL 中调用不同数学库的 pfact 和 DGEMM 的性能对比
                    如图 15 所示为 DGEMV 和 DTRSV 函数性能对比.DGEMV 在 panel 分解中时间占比仅次于 DGEMM,因此
   16   17   18   19   20   21   22   23   24   25   26