首页> 中文学位 >面向多核向量处理器BLAS库的设计与实现
【6h】

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

代理获取

目录

封面

声明

目录

中文摘要

英文摘要

第一章 绪论

1.1 课题研究背景及意义

1.2 BLAS函数库的研究现状

1 .3 多核DSP研究现状与发展趋势

1.4 汇编程序优化技术介绍

1.5 算法测试流程

1.6 论文的组织结构

第二章 X-D SP的体系结构和BLAS库简介

2 .1 X-DSP的体系结构

2.2 BLAS库

2.3 本章小结

第三章 BLAS1汇编程序设计与实现

3.1 BLAS1算法概述

3.2 向量范数设计与实现

3.3 矩阵范数设计与实现

3.4 DDOT的设计与实现

3.5 性能测试与分析

3.6 本章小结

第四章 BLAS2汇编程序设计与实现

4.1 BLAS2算法概述

4.2 GEMV的实现

4.3 SUM_MV的实现

4.4 GER的实现

4.5 TRMV的实现

4.6 TRSV的实现

4.7 性能测试与分析

4.8 本章小结

第五章 BLAS2的多核设计与实现

5.1 GEMV的并行性分析

5.2 GEMV的多核设计与实现

5.3 SUM_MV的多核设计与实现

5.4 GER的多核设计与实现

5.5 TRMV的多核设计与实现

5.6 TRSV的多核设计与实现

5.7 性能测试与分析

5.8 本章小结

第六章 结 束 语

6.1 论文工作总结

6.2 后续工作与展望

致谢

参考文献

作者在学期间取得的学术成果

展开▼

摘要

基本线性代数子程序BLAS(Basic Linear Algebra Subprograms)库是科学计算中引用最广泛的数学函数库之一,也是评测计算机性能的核心算法程序。X-DSP是我校自主研发的高性能多核向量处理器,主要用于数字通信、图像处理和雷达信号处理等领域,为充分发挥X-DSP的高性能,针对其特定体系结构特点开发高度优化的BL AS库函数具有重要的理论意义和应用价值。本文深入研究和分析了X-DSP的多核向量处理器的体系结构特点以及BLAS1、BLAS2中子函数的算法特点,针对X-DSP体系结构的多级并行性,详细设计了高效的算法映射,并基于手工汇编实现了高性能的BLAS1和BLAS2算法库。
  本研究主要内容包括:⑴设计和实现了基于X-DSP单核的BLAS1函数库,以向量范数、矩阵范数和DDOT算法为例,详细分析和设计了针对该DSP体系结构特点的算法映射,采用软件流水方法和手工汇编进行优化实现,充分挖掘了该处理器的指令并行性、向量并行性和数据并行性,取得了较高的计算性能。在RTL级平台上的测试结果表明,向量范数的平均性能达64.49GFLOPS,矩阵范数的平均性能达49.34GFLOPS,DDOT的平均性能达47.50GFLOPS。⑵设计和实现了基于X-DSP单核的BLAS2函数库。以GEMV、SUM_MV、GER、TRMV和TRSV五个子函数为例进行了详细算法分析与研究;对GEMV的计算方式进行了改进;对SUM_M V内核中存在的多周期写冲突进行优化设计;对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。⑶设计和实现了基于X-DSP多核并行BLAS2。深入研究了BLAS2中主要子函数的并行性,根据X-DSP的结构特点,找出了适合该体系结构的并行方案,采用分块的方式进行并行分解,使块之间的运算相互独立,优化了多核的负载均衡,结合X-DSP的多核通信及同步机制,将并行的BLAS2子例程高效地映射至多核中,12核的平均加速比达5.63。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号