面向ARMv8 64位多核处理器的QGEMM设计与实现
本文选题:ARMv + 位多核处理器 ; 参考:《计算机学报》2017年09期
【摘要】:该文在ARMv8 64位多核处理器上基于OpenBLAS首次设计、实现并优化了四精度矩阵乘法(Quadruple precision General Matrix-Matrix Multiplication,QGEMM).由于浮点计算中不可避免地引入舍入误差,双精度矩阵乘法(DGEMM)在某些情况下不能给出令人满意的数值结果,因此需要高精度或多精度算法来实现更精确的计算.Double-double算术是一种较为有效和广泛使用的手段.文中采用double-double数据格式构建结构体存储四精度浮点数据;基于OpenBLAS中的稠密矩阵计算的分块算法,增加四精度数据格式的相关的头文件和源文件,并用汇编代码撰写文中所提出的QGEMM的核心内核;利用无误差变换技术,调整并优化内核中的算法流程,避免规格化操作步骤造成的数据强制依赖关系;通过分析算法的数据依赖关系,设计寄存器的分配和轮转策略,优化指令调度顺序,开发指令级并行性,提高QGEMM的实际性能.根据具体算法使用混合乘加指令(FMA)的程度不同,文中采用了算法理论峰值性能这一概念,其有别于机器理论峰值的概念,能更好地评估文中所提出的QGEMM的实际效率.数值实验表明:文中通过汇编代码实现并优化的QGEMM性能最高达到19.7Gflops,效率为在ARMv864位多核处理器平台上QGEMM算法理论峰值性能的82.1%,在满足数值结果精度要求的同时,其计算速度约是由C语言撰写的未优化的QGEMM和MBLAS中QGEMM的5.8倍,是编译器GCC实现的long double数据格式的QGEMM的24倍.同时数值实验还显示文中提出的QGEMM针对不同规模的矩阵具有较好的线程可扩展性.
[Abstract]:In this paper, the first design based on OpenBLAS based on ARMv8 64-bit multi-core processor is presented. The four-precision matrix multiplication is realized and optimized. The Quadruple precision General Matrix-Matrix replication is optimized. Due to the inevitable introduction of rounding error in floating-point calculation, the double-precision matrix multiplication DGEMMM can not give satisfactory numerical results in some cases. Therefore, it is an effective and widely used method to calculate double-double arithmetic with high precision or multi-precision algorithm. In this paper, double-double data format is used to construct the structure to store four-precision floating-point data, and based on the block algorithm of dense matrix calculation in OpenBLAS, the related header files and source files of four-precision data format are added. The kernel of QGEMM is written with assembly code, and the algorithm flow in kernel is adjusted and optimized by using error-free transformation technology to avoid the data mandatory dependency caused by standardized operation steps. By analyzing the data dependence of the algorithm, designing register allocation and rotation strategy, optimizing instruction scheduling order, developing instruction level parallelism, improving the actual performance of QGEMM. According to the degree of using mixed multiplicative plus instruction (FMA), the concept of peak performance of algorithm theory is adopted in this paper, which is different from the concept of peak value of machine theory, which can better evaluate the actual efficiency of QGEMM proposed in this paper. Numerical experiments show that the QGEMM performance achieved and optimized by assembly code is up to 19.7Gflops, and the efficiency is 82.1% of the peak performance of the QGEMM algorithm on the ARMv864 multi-core processor platform. At the same time, the accuracy of the numerical results is satisfied. The speed of calculation is about 5.8 times that of QGEMM in unoptimized QGEMM and MBLAS written by C language, and 24 times that of QGEMM in long double data format implemented by compiler GCC. Numerical experiments also show that the proposed QGEMM has better thread scalability for different size matrices.
【作者单位】: 国防科学技术大学计算机学院;湖南大学信息科学与工程学院;国防科学技术大学并行与分布处理重点实验室;
【基金】:国家“八六三”高技术研究发展计划项目基金(2012AA01A301) 国家自然(61402495,61303189,61602166,61170049,61402496)资助~~
【分类号】:TP332
【相似文献】
相关期刊论文 前10条
1 许珊琳;;多核处理器——计算领域的又一次革命[J];中国集成电路;2006年05期
2 张洋;;虞志益:引领多核处理器创新之路[J];中国发明与专利;2013年01期
3 羽路;;多核处理器悄然崛起[J];集成电路应用;2005年05期
4 ;多核处理器强调多任务并行处理[J];每周电脑报;2006年35期
5 冯磊;;多核处理器的数量裸奔[J];信息系统工程;2006年11期
6 张浩;兰峰;;多核处理器基本原理及其在汽车领域中应用的展望[J];汽车科技;2007年03期
7 何军;王飙;;多核处理器的结构设计研究[J];计算机工程;2007年16期
8 肖红;;基于多核处理器系统开发中的几个问题[J];广东广播电视大学学报;2007年04期
9 张健浪;;三大于二,多核CPU之田忌赛马[J];新电脑;2008年06期
10 都思丹;;前言:嵌入式多核处理器系统及视频信号处理技术研究进展[J];南京大学学报(自然科学版);2009年01期
相关会议论文 前10条
1 郭建军;戴葵;王志英;;一种多核处理器存储层次性能评估模型[A];第八届全国信息隐藏与多媒体安全学术大会湖南省计算机学会第十一届学术年会论文集[C];2009年
2 彭林;张小强;刘德峰;谢伦国;田祖伟;;一种挖掘多核处理器存储级并行的算法[A];第15届全国信息存储技术学术会议论文集[C];2008年
3 刘杰;马彦;叶维;高剑刚;;多核处理器存储体系分析[A];第十五届计算机工程与工艺年会暨第一届微处理器技术论坛论文集(A辑)[C];2011年
4 潘送军;胡瑜;李晓维;;多核处理器瞬态故障敏感性分析[A];第五届中国测试学术会议论文集[C];2008年
5 方娟;张红波;;多核处理器预取策略的研究[A];2010年全国开放式分布与并行计算机学术会议论文集[C];2010年
6 何军;王飙;;通用多核处理器发展现状和趋势研究[A];第十五届计算机工程与工艺年会暨第一届微处理器技术论坛论文集(A辑)[C];2011年
7 桂亚东;;高效能计算机技术展望[A];庆祝中国力学学会成立50周年暨中国力学学会学术大会’2007论文摘要集(下)[C];2007年
8 万志涛;;基于多核处理器的面向时延敏感服务的云基础架构[A];中国通信学会信息通信网络技术委员会2011年年会论文集(上册)[C];2011年
9 陈远知;;多核处理器的里程碑——TILE64[A];全国第三届信号和智能信息处理与应用学术交流会专刊[C];2009年
10 陈远知;杨帆;;Tilera多核处理器网络应用研究[A];全国第五届信号和智能信息处理与应用学术会议专刊(第一册)[C];2011年
相关重要报纸文章 前10条
1 记者 曹继军 颜维琦;我国多核处理器研究实现新突破[N];光明日报;2012年
2 李梅 编译;多核处理器新年井喷[N];计算机世界;2007年
3 英特尔产品与平台市场部门数字家庭市场经理 庄淳杰;多核将大行其道[N];计算机世界;2007年
4 本报记者 陈斌;多核处理器的未来路径[N];计算机世界;2008年
5 ;多核:技术无悬念应用待拓展[N];计算机世界;2008年
6 Hillstone首席软件架构师 王钟;多核是更好的选择[N];网络世界;2009年
7 宋家雨;服务器销量会减半吗?[N];网络世界;2007年
8 蒋楠;美国 青少年变身“多核处理器”[N];中国计算机报;2006年
9 清华大学计算机系 教授 郑纬民;“多核”成为关键词[N];计算机世界;2007年
10 中航工业计算所 牛文生;计算机技术的一些新进展[N];中国航空报;2011年
相关博士学位论文 前10条
1 柴松;片上多核处理器的调度算法研究[D];电子科技大学;2014年
2 付桂涛;面向多核处理器的令牌一致性协议优化技术研究[D];国防科学技术大学;2014年
3 易娟;面向多核处理器系统的可靠性与能耗优化调度研究[D];重庆大学;2016年
4 王淼;面向多核处理器的并行编译及优化关键技术研究[D];国防科学技术大学;2010年
5 魏海涛;面向多核处理器的数据流程序编译关键技术研究[D];华中科技大学;2010年
6 吕海;多核处理器芯片计算平台中并行程序性能优化的研究[D];北京工业大学;2012年
7 李建华;片上多核处理器缓存子系统优化的研究[D];中国科学技术大学;2013年
8 杜建军;共享高速缓存多核处理器的关键技术研究[D];重庆大学;2011年
9 陈锐忠;非对称多核处理器的若干调度问题研究[D];华南理工大学;2013年
10 邓林;单芯片多核处理器存储优化技术研究[D];国防科学技术大学;2011年
相关硕士学位论文 前10条
1 张请;多核处理器关键技术研究[D];复旦大学;2014年
2 陈帅军;基于国产多核处理器核级冗余静态绑定和动态绑定机制的研究[D];哈尔滨工业大学;2015年
3 杨杭军;基于多核处理器的视频编解码并行算法研究[D];南京大学;2013年
4 王宗炎;基于OVP的多核处理器系统级建模与评估[D];复旦大学;2014年
5 范少华;多核处理器映射关键技术研究[D];复旦大学;2014年
6 裘凯;多核处理器映射关键技术研究[D];复旦大学;2014年
7 冯勇;基于Tilera多核处理器的并行模型研究[D];西安电子科技大学;2014年
8 庞守雷;面向特定应用的多核处理器体系结构关键技术研究[D];国防科学技术大学;2014年
9 欧丽军;面向未来通信算法的多核处理器存储系统设计与实现[D];国防科学技术大学;2014年
10 龙恋;多核处理器存储资源管理建模与访存带宽管理优化[D];国防科学技术大学;2014年
,本文编号:1780846
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/1780846.html