基于申威1600的3级BLAS GEMM函数优化
发布时间:2017-10-14 08:11
本文关键词:基于申威1600的3级BLAS GEMM函数优化
更多相关文章: 申威 三级BLAS GEMM 高性能计算 多核
【摘要】:BLAS是当前科学计算领域重要的底层支持数学库之一,其中的3级BLAS函数应用最为广泛.本文基于国产申威1600平台,提出了一种基础线性代数库BLAS的三级函数通用矩阵乘GEMM的高性能实现方法.在单核上,使用乘加指令、循环展开、软件流水线指令重排、SIMD向量化运算、寄存器分块技术等与平台架构相关的技术手段,实现汇编级手工优化;在多核上,提出了适用于该平台的多线程加速方案.实验结果显示,在单核串行性能测试中,与知名开源数学库Goto BLAS相比,我们实现了平均4.72倍的加速效果;在多核并行扩展测试中,4线程版的性能则平均达到了单线程版性能的3.02倍.
【作者单位】: 中国科学院软件研究所;中国科学院大学;
【关键词】: 申威 三级BLAS GEMM 高性能计算 多核
【基金】:国家自然科学基金(91530103,91530323)
【分类号】:TP38
【正文快照】: 1引言1.1背景介绍BLAS(Basic Linear Algebra Subprograms)是一个线性代数核心子程序的集合,主要包括向量和矩阵的基本操作.它是最基本和最重要的数学库之一,广泛应用于科学工程计算.目前世界上有关矩阵运算的软件几乎都调用BLAS数学库;重要的稠密线性代数算法软件包(如EISPAC,
本文编号:1029950
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/1029950.html