首页> 中文学位 >CUDA平台上的CPU/GPU异步计算模式
【6h】

CUDA平台上的CPU/GPU异步计算模式

代理获取

目录

文摘

英文文摘

论文说明:图表目录

声明

第1章 绪论

1.1研究背景

1.1.1 GPGPU

1.1.2 CUDA

1.1.3数据并行应用

1.2相关工作

1.2.1 Imagine上的合作计算模式

1.2.2 CELL上的合作计算模式

1.3 CPU/GPU合作计算模式研究意义

1.3.1 GPU负载平衡度

1.3.2 CPU、GPU利用率

1.4论文的研究目标和主要工作

1.5论文的结构

第2章CUDA编程模型及体系结构

2.1 CUDA编程模型

2.2.1主机与设备

2.2.2线程结构

2.2.3硬件映射

2.2 CUDA存储器模型

2.2.1寄存器

2.2.2局部存储器

2.2.3共享存储器

2.2.4全局存储器

2.2.5常数存储器

2.2.6纹理存储器

2.3 CUDA硬件架构

2.3.1 SPA

2.3.2 存储器系统

2.4小结

第3章CPU/GPU异步计算模式的设计与实现

3.1主/辅助数据管理结构

3.1.1 GPU负载平衡度

3.1.2额外时间、空间消耗

3.1.3通用性

3.2线程划分

3.2.1数据读入线程

3.2.2 CPU计算线程

3.2.3主控GPU计算线程

3.3线程间同步与通信

3.3.1轮询

3.3.2信号量

3.4生产-消费速度对模式的影响

3.4.1 Vp远小于Vc

3.4.2 Vp与Vc类似

3.4.3 Vp远大于Vc

3.5小结

第4章CPU/GPU异步计算模式的性能评测

4.1 HMMER

4.1.1隐马尔可夫模型HMM

4.1.2 HMM在生物信息学的应用

4.1.3 HMMER及其各种平台实现

4.2主/辅助数据管理结构体与线程划分实现

4.3性能评测

4.3.1 同/异步模式性能

4.3.2 各因素对异步模式的影响

4.4小结

第5章全文总结

5.1研究工作和成果

5.2未来工作的展望

参考文献

在读期间发表的学术论文与取得的研究成果

在读期间参与的科研项目

致 谢

展开▼

摘要

计算统一设备架构(CUDA,Compute Unified Device Architecture)开启了使用GPU强大计算能力做通用计算的大门,使得开发者能够在友好的开发环境中充分挖掘GPU的计算能力,同时也对CPU/GPU高效的合作计算模式提出了新的要求。一方面,在处理大规模并行数据时,需要保证GPU上各线程间的负载能够平衡;另一方面,在使用GPU进行计算时,需要保持较高的CPU和GPU利用率。本文分析了CUDA平台上CPU/GPU同步计算模式的优缺点;提出了CPU/GPU异步计算模式,此模式能够在处理有效计算量分布不平衡的大规模并行数据的应用中发挥较好作用;最后使用生物信息学中的应用HMMER,对比评测了两种计算模式。该研究对CUDA平台上面向应用设计合适的CPU/GPU高效合作计算方法具有一定指导意义。
   本文主要研究成果包括:(1)为有效管理有效计算量分布不平衡的大规模并行数据设计了通用数据结构,包括主数据管理结构和辅助数据管理结构,以有效计算工作量为核心,将类似数据统一管理并提交给GPU上各线程,从而保证线程间负载平衡。(2)提出了异步计算模式,设计了CPU上的线程划分方式,包含数据读入线程、计算线程、主控GPU线程。针对CPU和GPU做同步计算时,CPU需要等待GPU完成计算,导致CPU计算资源浪费问题,通过多线程设计,使得CPU无需等待GPU就能够利用本身的计算能力处理数据,从而加快整个程序的运行。(3)以生物信息学应用HMMER为例,分别应用CPU/GPU同步和异步计算模式,评测了性能上的改变,同时讨论了有效计算量区间设计、线程间通信方式、数据生产消费速度、数据转移方式等对异步计算模式性能的影响。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号