摘要 | 第3-4页 |
Abstract | 第4页 |
第1章 绪论 | 第7-15页 |
1.1 研究背景与意义 | 第7-8页 |
1.2 国内外研究现状与未来发展趋势 | 第8-14页 |
1.2.1 GPU 通用算法 | 第8-12页 |
1.2.2 背包问题 | 第12-13页 |
1.2.3 并行计算 | 第13-14页 |
1.3 研究目标和内容 | 第14页 |
1.4 研究的思路和逻辑结构 | 第14-15页 |
第2章 相关理论与算法概述 | 第15-25页 |
2.1 相关概念的界定与说明 | 第15-17页 |
2.1.1 GPU | 第15页 |
2.1.2 背包问题 | 第15-16页 |
2.1.3 并行计算 | 第16-17页 |
2.2 并行计算理论 | 第17-19页 |
2.3 背包问题的基本算法 | 第19-25页 |
2.3.1 动态规划算法 | 第19-20页 |
2.3.2 递归算法 | 第20-21页 |
2.3.3 贪婪算法 | 第21-22页 |
2.3.4 遗传算法 | 第22-24页 |
2.3.5 分支限界算法 | 第24-25页 |
第3章 GPU 并行计算的整体框架 | 第25-33页 |
3.1 通用并行计算架构 | 第25-27页 |
3.2 CUDA 编程模型 | 第27-29页 |
3.2.1 CPU+GPU 异构模型 | 第27-28页 |
3.2.2 kernel 与线程层次结构 | 第28-29页 |
3.3 CUDA 存储器模型 | 第29-33页 |
3.3.1 全局存储器 | 第30页 |
3.3.2 本地存储器 | 第30-31页 |
3.3.3 固定存储器 | 第31页 |
3.3.4 纹理存储器 | 第31页 |
3.3.5 共享存储器 | 第31-32页 |
3.3.6 寄存器 | 第32-33页 |
第4章 0-1 背包问题二表算法 | 第33-44页 |
4.1 串行二表算法 | 第33-35页 |
4.2 并行基本算法 | 第35-36页 |
4.2.1 并行划分算法 | 第35-36页 |
4.2.2 最优并行归并算法 | 第36页 |
4.3 并行二表算法 | 第36-44页 |
4.3.1 子集和生成算法 | 第37-38页 |
4.3.2 剪块算法 | 第38-41页 |
4.3.3 解的搜索算法 | 第41-43页 |
4.3.4 算法性能分析 | 第43-44页 |
第5章 基于分治策略的背包问题 GPU 并行实现与实验 | 第44-56页 |
5.1 基于分治策略的背包问题 GPU 并行实现平台 | 第44-45页 |
5.2 二表算法的 CUDA 并行实现 | 第45-50页 |
5.2.1 CPU+GPU 异构模式算法设计 | 第45-47页 |
5.2.2 GPU 上并行二表算法设计 | 第47-50页 |
5.3 测试 | 第50-56页 |
5.3.1 block 块大小性能 | 第50-51页 |
5.3.2 CPU 二表算法性能 | 第51-52页 |
5.3.3 性能对比分析 | 第52-56页 |
研究结论 | 第56-57页 |
参考文献 | 第57-60页 |
附录 A 攻读学位期间所发表的学术论文目录 | 第60-61页 |
致谢 | 第61页 |