当前位置:主页 > 科技论文 > 计算机论文 >

面向多核向量处理器BLAS库的设计与实现

发布时间:2017-04-22 23:01

  本文关键词:面向多核向量处理器BLAS库的设计与实现,由笔耕文化传播整理发布。


【摘要】:基本线性代数子程序BLAS(Basic Linear Algebra Subprograms)库是科学计算中引用最广泛的数学函数库之一,也是评测计算机性能的核心算法程序。X-DSP是我校自主研发的高性能多核向量处理器,主要用于数字通信、图像处理和雷达信号处理等领域,为充分发挥X-DSP的高性能,针对其特定体系结构特点开发高度优化的BLAS库函数具有重要的理论意义和应用价值。本文深入研究和分析了X-DSP的多核向量处理器的体系结构特点以及BLAS1、BLAS2中子函数的算法特点,针对X-DSP体系结构的多级并行性,详细设计了高效的算法映射,并基于手工汇编实现了高性能的BLAS1和BLAS2算法库。主要工作包括以下几个方面:1、设计和实现了基于X-DSP单核的BLAS1函数库,以向量范数、矩阵范数和DDOT算法为例,详细分析和设计了针对该DSP体系结构特点的算法映射,采用软件流水方法和手工汇编进行优化实现,充分挖掘了该处理器的指令并行性、向量并行性和数据并行性,取得了较高的计算性能。在RTL级平台上的测试结果表明,向量范数的平均性能达64.49GFLOPS,矩阵范数的平均性能达49.34GFLOPS,DDOT的平均性能达47.50GFLOPS。2、设计和实现了基于X-DSP单核的BLAS2函数库。以GEMV、SUM_MV、GER、TRMV和TRSV五个子函数为例进行了详细算法分析与研究;对GEMV的计算方式进行了改进;对SUM_MV内核中存在的多周期写冲突进行优化设计;对GER、GER2、SYR、SYR2进行了对比分析;对TRMV中的三角矩阵进行了分块,以减少0值参与运算;对TRSV中三角逆矩阵的更新方式进行了分析,根据向量处理器的特点进行了优化设计;结合X-DSP的硬件机制分别将GEMV、SUM_MV、GER、TRMV和TRSV五个例程高效地映射至X-DSP单核结构中,性能分别为93.67GFLOPS、53.06 GFLOPS、63.85 GFLOPS、92.85 GFLOPS、62.78 GFLOPS。3、设计和实现了基于X-DSP多核并行BLAS2。深入研究了BLAS2中主要子函数的并行性,根据X-DSP的结构特点,找出了适合该体系结构的并行方案,采用分块的方式进行并行分解,使块之间的运算相互独立,优化了多核的负载均衡,结合X-DSP的多核通信及同步机制,将并行的BLAS2子例程高效地映射至多核中,12核的平均加速比达5.63。
【关键词】:多核向量处理器 矩阵向量乘 范数 优化 并行 分块算法 BLAS
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP332
【目录】:
  • 摘要10-11
  • ABSTRACT11-12
  • 第一章 绪论12-20
  • 1.1 课题研究背景及意义12-13
  • 1.2 BLAS函数库的研究现状13-15
  • 1.3 多核DSP研究现状与发展趋势15-17
  • 1.4 汇编程序优化技术介绍17-18
  • 1.4.1 软件流水17
  • 1.4.2 填充延时槽17
  • 1.4.3 指令级优化17-18
  • 1.5 算法测试流程18-19
  • 1.6 论文的组织结构19-20
  • 第二章 X-DSP的体系结构和BLAS库简介20-26
  • 2.1 X-DSP的体系结构20-22
  • 2.1.1 X-DSP的多核体系结构20
  • 2.1.2 X-DSP的单核体系结构20-21
  • 2.1.3 X-DSP的DMA基本功能21-22
  • 2.1.4 X-DSP的存储结构22
  • 2.2 BLAS库22-25
  • 2.2.1 BLAS库的构成22-23
  • 2.2.2 BLAS函数库子函数23-25
  • 2.3 本章小结25-26
  • 第三章 BLAS1汇编程序设计与实现26-50
  • 3.1 BLAS1算法概述26-27
  • 3.2 向量范数设计与实现27-38
  • 3.2.1 实向量范数的算法分析27-29
  • 3.2.2 实向量范数的算法设计与优化29-32
  • 3.2.3 复向量范数的算法分析32-33
  • 3.2.4 复向量范数的算法设计与优化33-38
  • 3.3 矩阵范数设计与实现38-45
  • 3.3.1 实矩阵范数的算法分析38-39
  • 3.3.2 实矩阵范数的算法设计与优化39-41
  • 3.3.3 复矩阵范数的算法分析41-42
  • 3.3.4 复矩阵范数的算法设计与优化42-45
  • 3.4 DDOT的设计与实现45-47
  • 3.4.1 DDOT的算法分析45
  • 3.4.2 DDOT的算法设计与优化45-47
  • 3.5 性能测试与分析47-49
  • 3.6 本章小结49-50
  • 第四章 BLAS2汇编程序设计与实现50-79
  • 4.1 BLAS2算法概述50
  • 4.2 GEMV的实现50-59
  • 4.2.1 GEMV的算法分析50-52
  • 4.2.2 GEMV的算法设计与实现52-59
  • 4.3 SUM_MV的实现59-63
  • 4.3.1 SUM_MV的算法分析59
  • 4.3.2 SUM_MV的算法设计与实现59-63
  • 4.4 GER的实现63-67
  • 4.4.1 GER的算法分析63-65
  • 4.4.2 GER的算法设计与实现65-67
  • 4.5 TRMV的实现67-72
  • 4.5.1 TRMV的算法分析67-69
  • 4.5.2 TRMV的算法设计与实现69-72
  • 4.6 TRSV的实现72-75
  • 4.6.1 TRSV的算法分析72-73
  • 4.6.2 TRSV的算法设计与实现73-75
  • 4.7 性能测试与分析75-78
  • 4.8 本章小结78-79
  • 第五章 BLAS2的多核设计与实现79-90
  • 5.1 GEMV的并行性分析79-80
  • 5.2 GEMV的多核设计与实现80-82
  • 5.3 SUM_MV的多核设计与实现82-83
  • 5.4 GER的多核设计与实现83-85
  • 5.5 TRMV的多核设计与实现85-86
  • 5.6 TRSV的多核设计与实现86-88
  • 5.7 性能测试与分析88-89
  • 5.7.1 GEMV的多核性能测试与分析88
  • 5.7.2 BLAS2的多核性能测试与分析88-89
  • 5.8 本章小结89-90
  • 第六章 结束语90-92
  • 6.1 论文工作总结90-91
  • 6.2 后续工作与展望91-92
  • 致谢92-94
  • 参考文献94-97
  • 作者在学期间取得的学术成果97

【相似文献】

中国期刊全文数据库 前3条

1 罗茜文;;CEVA推出业界首款面向软件无线电的向量处理器 DSP内核进军4G市场[J];移动通信;2010年23期

2 韩霜;;CEVA向量处理器DSP内核大幅提升无线基站性能[J];世界电子元器件;2010年12期

3 ;[J];;年期

中国硕士学位论文全文数据库 前1条

1 张军阳;面向多核向量处理器BLAS库的设计与实现[D];国防科学技术大学;2014年


  本文关键词:面向多核向量处理器BLAS库的设计与实现,由笔耕文化传播整理发布。



本文编号:321401

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/321401.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户6aba0***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com