首页> 中文学位 >面向CUDA的循环语句源到源并行化研究
【6h】

面向CUDA的循环语句源到源并行化研究

代理获取

目录

封面

声明

目录

中文摘要

英文摘要

1绪论

1.1 研究背景和意义

1.2 源到源并行化技术研究现状

1.3 本文的主要工作

1.4 本文的组织结构

2 CUDA通用并行计算模型

2.1 CUDA基础

2.2 硬件映射

2.3 软件体系

2.4存储器层次结构

2.5 小结

3 STS-CUDA并行化架构设计

3.1 STS-CUDA的核心架构

3.2 STS-CUDA的编译过程

3.3 STS-CUDA并行转化的要点

3.4 小结

4 实现并行转化的关键技术

4.1 计算模型的并行转化

4.2 数据模型的并行转化

4.3 源到源并行化的转化策略

4.4 小结

5目标代码的优化

5.1 STS-CUDA中用到的优化方法

5.2 CUDA中实现进一步优化的方法

5.3 小结

6实验测试和分析

6.1 实验平台的搭建

6.2 第一种矩阵乘法并行化方案

6.3 第二种矩阵乘法并行化方案

6.4 STS-CUDA源到源并行化BP算法方案

6.5 小结

7 总结与展望

7.1全文总结

7.2研究展望

参考文献

攻读硕士期间学术成果

致谢

展开▼

摘要

近年来,图形处理单元(Graphics Processing Unit,GPU)被广泛用于高性能计算。将GPU用于图形渲染外的计算称为GPU通用计算(General Purpose Computing on GPU, GPGPU)。传统的GPGPU直接用图形学API编程,开发难度大。统一计算设备架构(Compute Unified Device Architecture,CUDA)降低了在GPU上编写并行程序的难度,目前已得到广泛应用。但开发人员在CUDA下手工开发并行程序需要深入了解GPU架构和CUDA模型,难度仍很大。所以降低并行程序的开发难度对于GPU通用计算的推广应用十分重要。
  本文研究GPU并行程序的自动生成问题,提出了一种面向CUDA的源到源并行化架构STS-CUDA。STS-CUDA可将带循环的可并行化的串行C程序转化为在GPU上并行的CUDA C程序,方便CUDA并行编程。STS-CUDA的工作过程为:先分析可并行化的串行C程序并在其适当位置插入符合STS-CUDA规范的与并行转化有关的指导语句;后通过STS-CUDA识别匹配这些指导语句,转化成对应的CUDA C并行程序。文章研究了STS-CUDA实现并行转化过程中涉及到的任务合理划分、主机端-设备端通信优化、全局存储和共享存储访问优化等方法,最后用实例进行了测试。
  通过STS-CUDA转化得到的两组矩阵乘法并行化和一组BP算法并行化程序与手写的CUDA并行程序在CUDA下执行得到的结果相近,二者相对于串行程序的加速比也是相近的,证明了提出的STS-CUDA架构的在简化CUDA编程方面的有效性。还可以进一步研究如何减少 STS-CUDA中的指导语句以完全屏蔽GPU底层架构,如何在STS-CUDA中加入更多优化方法使转化后的目标代码性能更佳。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号