软件学报

北大核心,INSPEC,JST,Pж(AJ),EI

国内刊号:11-2560/TP

国际刊号:1000-9825

软件学报杂志2024年第3期:国产SW26010-Pro处理器上3级BLAS函数众核并行优化

发布日期:

作者:胡怡,陈道琨,杨超,马文静,刘芳芳,宋超博,孙强,史俊达

单位:胡怡,中国科学院 软件研究所 并行软件与计算科学实验室, 北京 100190;中国科学院大学, 北京 10004911,陈道琨,中国科学院 软件研究所 并行软件与计算科学实验室, 北京 100190;中国科学院大学, 北京 10004902,杨超,北京大学 数学科学学院, 北京 10087103,马文静,中国科学院 软件研究所 并行软件与计算科学实验室, 北京 100190;中国科学院大学, 北京 10004904,刘芳芳,中国科学院 软件研究所 并行软件与计算科学实验室, 北京 100190;中国科学院大学, 北京 10004905,宋超博,国家并行计算机工程技术研究中心, 北京 10019006,孙强,国家并行计算机工程技术研究中心, 北京 10019007,史俊达,国家并行计算机工程技术研究中心, 北京 10019008

关键词:BLAS 3级;SW26010-Pro众核处理器;直接内存访问;远程内存访问;浮点计算效率

基金:国家重点研发计划(2020YFB0204601)

BLAS (basic linear algebra subprograms)是最基本、最重要的底层数学库之一.在一个标准的BLAS库中,BLAS 3级函数涵盖的矩阵-矩阵运算尤为重要,在许多大规模科学与工程计算应用中被广泛调用.另外,BLAS 3级属于计算密集型函数,对充分发挥处理器的计算性能有至关重要的作用.针对国产SW26010-Pro处理器研究BLAS 3级函数的众核并行优化技术.具体而言,根据SW26010-Pro的存储层次结构,设计多级分块算法,挖掘矩阵运算的并行性.在此基础上,基于远程内存访问(remote memory access,RMA)机制设计数据共享策略,提高从核间的数据传输效率.进一步地,采用三缓冲、参数调优等方法对算法进行全面优化,隐藏直接内存访问(direct memory access,DMA)访存开销和RMA通信开销.此外,利用SW26010-Pro的两条硬件流水线和若干向量化计算/访存指令,还对BLAS 3级函数的矩阵-矩阵乘法、矩阵方程组求解、矩阵转置操作等若干运算进行手工汇编优化,提高了函数的浮点计算效率.实验结果显示,所提出的并行优化技术在SW26010-Pro处理器上为BLAS 3级函数带来了明显的性能提升,单核组BLAS 3级函数的浮点计算性能最高可达峰值性能的92%,多核组BLAS 3级函数的浮点计算性能最高可达峰值性能的88%.

来源:2024年第3期

《软件学报》期刊编辑部

查看软件学报杂志2024年第3期

联系我们

  • 地址:北京8718信箱
  • 电话:010-62562563
  • E-mail:jos (a) iscas. ac. cn

咨询工作人员