摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第11-22页 |
1.1 研究背景及意义 | 第11-15页 |
1.1.1 CPU-GPU异构计算环境 | 第11-13页 |
1.1.2 区块链关键算法的研究 | 第13-14页 |
1.1.3 研究意义 | 第14-15页 |
1.2 国内外研究现状 | 第15-20页 |
1.2.1 CUDA访存方式的发展 | 第16-17页 |
1.2.2 NVLink优化数据流传输 | 第17-19页 |
1.2.3 IBM的CAPI架构 | 第19页 |
1.2.4 国内外GPU加速 | 第19-20页 |
1.3 主要研究内容 | 第20-21页 |
1.4 组织结构 | 第21-22页 |
第二章 相关技术研究 | 第22-32页 |
2.1 CUDA架构的演变 | 第22-25页 |
2.1.1 Tesla架构 | 第22页 |
2.1.2 Fermi架构 | 第22-23页 |
2.1.3 Kepler架构 | 第23-24页 |
2.1.4 Maxwell架构 | 第24页 |
2.1.5 Pascal架构 | 第24-25页 |
2.2 CUDA模型 | 第25-30页 |
2.2.1 执行模型 | 第25-27页 |
2.2.2 存储模型 | 第27-30页 |
2.2.3 流和事件 | 第30页 |
2.3 CUDA动态并行 | 第30-31页 |
2.4 本章小结 | 第31-32页 |
第三章 算法并行化实现和数据流的优化 | 第32-54页 |
3.1 SHA-256算法并行化的分析 | 第32-35页 |
3.1.1 SHA-256算法介绍 | 第32-33页 |
3.1.2 SHA-256算法的并行化分析 | 第33-35页 |
3.2 KECCAK算法并行化的分析 | 第35-40页 |
3.2.1 Keccak算法介绍 | 第35-38页 |
3.2.2 Keccak算法的并行化分析 | 第38-40页 |
3.3 SHA-256和KECCAK算法在CUDA上的实现 | 第40-43页 |
3.3.1 CUDA程序执行框架 | 第40页 |
3.3.2 主机端程序设计 | 第40-41页 |
3.3.3 设备端程序设计 | 第41-43页 |
3.4 数据流的处理模型 | 第43-46页 |
3.4.1 数据流概述 | 第43页 |
3.4.2 基于GPU数据流处理模型框架 | 第43-46页 |
3.5 数据流处理瓶颈分析 | 第46-48页 |
3.5.1 数据流传输 | 第46-47页 |
3.5.2 数据流的存取 | 第47-48页 |
3.5.3 数据流加工过程 | 第48页 |
3.6 数据流优化 | 第48-52页 |
3.6.1 Hyper-Q优化数据流 | 第48-50页 |
3.6.2 纹理内存优化数据流 | 第50-51页 |
3.6.3 常量内存优化数据流 | 第51-52页 |
3.7 数据依赖性 | 第52-53页 |
3.7.1 数据依赖问题 | 第52页 |
3.7.2 数据依赖性的解决方式 | 第52-53页 |
3.8 本章小结 | 第53-54页 |
第四章 性能评价 | 第54-60页 |
4.1 实验平台和测试性能方法介绍 | 第54页 |
4.1.1 实验平台 | 第54页 |
4.1.2 测试性能方法 | 第54页 |
4.2 实验结果性能分析 | 第54-59页 |
4.2.1 CPU-GPU测试 | 第54-57页 |
4.2.2 数据流优化测试 | 第57-59页 |
4.3 本章小结 | 第59-60页 |
第五章 总结与展望 | 第60-63页 |
5.1 总结 | 第60-61页 |
5.2 展望 | 第61-63页 |
参考文献 | 第63-66页 |
致谢 | 第66页 |