图算法在GPU上的设计实现与性能分析

图算法在GPU上的设计实现与性能分析

论文摘要

利用图形处理器进行通用计算(General Purpose Computation on GPU,GPGPU)是当前高性能计算领域的一个研究热点。目前,GPGPU领域的图算法研究较少且效果不佳,一个重要原因是图算法具有不规则访存、动态数据处理等性质,算法执行时难以预测访存地址和分配数据,增加了在GPU上的设计难度。另一方面,近年来Web信息处理等新兴应用的数据规模急剧增长,图算法在其中的重要性越来越突出,应用越来越广泛,图算法执行效率严重制约着数据处理效率。研究GPU上图算法的设计实现方法,寻找解决其中不规则访存和动态数据处理等问题的通用方法,有助于提高新兴应用中的图算法执行效率,也为具有同类性质的其它算法在GPU上的设计提供参考。本文分析了在GPU上设计实现图算法的研究现状,归纳了在GPU上设计图算法的两个难题,即不规则访存与动态数据处理。针对不规则访存问题,采用数据并行原语思想设计了基于GPU的Min-Reduction数据并行原语,通过设计全局存储器规约和共享存储器规约两个原语模块,综合使用序列地址、循环展开、模板参数编译等技术,快速得出规约结果,并将其应用于Prim最小生成树算法在GPU上的设计实现过程;针对动态数据处理问题,采用层次化设计思想设计了层次化任务分配、层次化工作队列、层次化Kernel调用三种方法,有效降低了空线程消耗、全局存储器访问开销、Kernel调用性能损耗,之后在GPU上设计Moore单源最短路径算法时使用了上述方法。最后从理论和实验两方面分析了算法性能。给出了GPU程序性能模型的建立过程并评估了GPU上Prim算法和Moore算法的性能,验证了应用GPU提高图算法效率的合理性。使用不同规模的多种图数据进行了测试,对比相关文献算法实现,GPU上的Prim算法和Moore算法分别取得了1.86和4.42的最大加速比,验证了本文方法的有效性。

论文目录

  • 表目录
  • 图目录
  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 研究背景和意义
  • 1.2 研究现状分析
  • 1.3 论文研究内容
  • 1.4 论文章节组织
  • 第二章 相关研究工作
  • 2.1 GPU并行计算架构研究
  • 2.1.1 GPU并行计算架构概述
  • 2.1.2 CUDA平台
  • 2.2 图算法相关技术研究
  • 2.2.1 图算法研究概述
  • 2.2.2 不规则访存与数据并行原语
  • 2.2.3 动态数据处理与层次化策略
  • 2.3 GPU架构上的图数据结构
  • 2.3.1 传统图数据结构
  • 2.3.2 压缩邻接表结构
  • 2.3.3 改进的压缩邻接表
  • 2.4 小结
  • 第三章 基于GPU的并行Prim最小生成树算法
  • 3.1 最小生成树问题与Prim算法
  • 3.1.1 最小生成树问题描述
  • 3.1.2 Prim算法流程分析
  • 3.2 GPU Min-Reduction数据并行原语
  • 3.2.1 原语设计思想与结构
  • 3.2.2 全局存储器规约
  • 3.2.3 共享存储器规约
  • 3.3 基于GPU的并行Prim算法的设计
  • 3.3.1 并行化时机与并行化策略
  • 3.3.2 算法总体设计
  • 3.3.3 降距过程设计
  • 3.3.4 CPU预处理与后处理设计
  • 3.4 基于GPU的并行Prim算法的实现
  • 3.4.1 重要数据结构实现
  • 3.4.2 关键步骤实现技术
  • 3.4.3 程序执行完整流程
  • 3.5 小结
  • 第四章 基于GPU的并行Moore单源最短路径算法
  • 4.1 单源最短路径问题与Moore算法
  • 4.1.1 单源最短路径问题描述
  • 4.1.2 Moore算法流程分析
  • 4.2 CUDA平台上的层次化策略
  • 4.2.1 基本设计思想
  • 4.2.2 层次化任务分配
  • 4.2.3 层次化工作队列
  • 4.2.4 层次化Kernel调用
  • 4.3 基于GPU的并行Moore算法的设计
  • 4.3.1 并行化时机与并行化策略
  • 4.3.2 算法总体设计
  • 4.3.3 设计方式比较
  • 4.4 基于GPU的并行Moore算法的实现
  • 4.4.1 重要数据结构实现
  • 4.4.2 程序执行完整流程
  • 4.4.3 算法应用实例分析
  • 4.5 小结
  • 第五章 性能评估与实验测试
  • 5.1 GPU程序性能评估
  • 5.1.1 性能分析模型的建立
  • 5.1.2 两类算法的性能评估
  • 5.2 实验测试与结果分析
  • 5.2.1 测试环境的建立
  • 5.2.2 测试数据的处理
  • 5.2.3 对比算法的选择
  • 5.2.4 GPU Prim算法测试结果分析
  • 5.2.5 GPU Moore算法测试结果分析
  • 5.3 小结
  • 结束语
  • 一.本文工作总结
  • 二.下一步工作展望
  • 参考文献
  • 作者简历 攻读硕士学位期间完成的主要工作
  • 致谢
  • 相关论文文献

    • [1].GPU架构的航拍舰船图像拼接算法[J]. 舰船科学技术 2020(06)
    • [2].数字信号相似度方法研究及GPU并行加速[J]. 贵州师范大学学报(自然科学版) 2020(03)
    • [3].基于GPU平台和多源遥感的月度草畜平衡快速评价方法研究[J]. 科技促进发展 2020(Z1)
    • [4].GPU优化的大规模线性方程组并行求解的研究与比较[J]. 信息通信 2016(12)
    • [5].GPU支持的低延迟引力波数据处理[J]. 中国科学:物理学 力学 天文学 2017(01)
    • [6].片上网络良率评估的GPU加速[J]. 浙江大学学报(工学版) 2017(01)
    • [7].基于GPU的图像处理并行算法分析[J]. 中小企业管理与科技(上旬刊) 2017(03)
    • [8].GPU协处理视频编码的服务平台设计[J]. 电脑知识与技术 2016(28)
    • [9].基于GPU的图像处理计算方法分析[J]. 科技风 2017(03)
    • [10].基于GPU的脉冲压缩并行化研究[J]. 航空计算技术 2017(02)
    • [11].基于GPU的图像增强实验设计与实现[J]. 实验技术与管理 2017(05)
    • [12].基于GPU的数字信道化设计[J]. 数字技术与应用 2017(06)
    • [13].基于GPU加速的电力系统静态安全分析研究[J]. 机电信息 2017(27)
    • [14].GPU并行计算分析[J]. 数字通信世界 2017(09)
    • [15].基于双线性插值的图像缩放在GPU上的实现[J]. 微电子学与计算机 2016(11)
    • [16].GPU并行加速的多步逆时偏移在东濮前梨园地区的应用[J]. 物探与化探 2015(01)
    • [17].基于GPU的视频编辑特效技术研究与实现[J]. 科技资讯 2015(12)
    • [18].基于GPU的异构计算技术在超级计算领域的现状及发展展望[J]. 电脑迷 2017(08)
    • [19].瑞士研究人员利用GPU加速的超级计算机模拟宇宙[J]. 中国教育网络 2017(08)
    • [20].一种基于GPU的逆时偏移并行算法[J]. 计算机应用与软件 2013(10)
    • [21].基于GPU并行加速的逆时偏移成像方法[J]. 石油地球物理勘探 2013(05)
    • [22].一种基于GPU的主机接口设计与验证[J]. 航空计算技术 2020(06)
    • [23].局部地形改正快速计算的GPU并行的棱柱法[J]. 测绘学报 2020(11)
    • [24].高性能GPU模拟器的实现[J]. 高技术通讯 2020(06)
    • [25].基于GPU的天基预警雷达信号自适应检测仿真[J]. 计算机仿真 2020(06)
    • [26].未来的汽车需要什么样的GPU?[J]. 单片机与嵌入式系统应用 2018(03)
    • [27].未来的汽车需要什么样的GPU?[J]. 中国集成电路 2018(07)
    • [28].基于GPU的视频序列中运动目标轮廓提取[J]. 电子测量技术 2016(11)
    • [29].基于GPU加速的包络波形反演[J]. 物探化探计算技术 2017(02)
    • [30].基于GPU的高质量隐式曲面四边形化[J]. 计算机辅助设计与图形学学报 2016(04)

    标签:;  ;  ;  ;  ;  ;  

    图算法在GPU上的设计实现与性能分析
    下载Doc文档

    猜你喜欢