GPU 计算与工程应用
GPU 计算与工程应用
题 目 小球碰撞检测
学 生 21721092 周家炜
老 师 唐 敏
摘要 i
摘要
利用 NVIDIA CUDA 编程平台,实现了基于 GPU 并行的小球碰撞检测的模型。
本文并根据 GPU 课堂上学到的知识提出了四种优化小球碰撞检测的方案。这些方
案分别对常量内存,共享内存,规约算法,流等方法进行了尝试。同时对四种提出
的方案结果进行清晰的呈现,并分析产生方案的结果的原因,并提出新的优化方案。
关键词: GPU 小球碰撞检测
ABSTRACT ii
ABSTRACT
Using NVIDIA CUDA programming platform, the ball collision detection model
based on GPU parallel is realized. In this paper, four optimized collision detection schemes
are proposed according to the knowledge gained in GPU classroom. These methods are
tried on constant memory, shared memory, protocol algorithm, stream and so on. At the
same time, the results of the four schemes are presented clearly, and the causes of the
results are analyzed, and a new optimization scheme is put forward.
Keywords: GPU Ball Collision Detection
目录 1
目录
摘要 ................................................................................................................................ i
ABSTRACT ................................................................................................................. ii
目录 ............................................................................................................................... 1
第一章 课题背景 ....................................................................................................... 3
1.1 台式电脑的显卡 .......................................................................................................................... 3
1.2 本文主要内容 .............................................................................................................................. 3
第二章 小球碰撞的解决方案 ................................................................................... 5
2.1 方案一 基础方案 ........................................................................................................................ 5
2.1.1 小球碰撞检测的原理 .............................................................................................................................5
2.1.2 碰撞小球对的计数 ................................................................................................................................6
2.1.3 碰撞小球的颜色变化 ............................................................................................................................6
2.2 方案二 碰撞计数加速 ................................................................................................................ 6
2.3 方案三 共享内存加速 ................................................................................................................ 8
2.4 方案四 多流加速 ........................................................................................................................ 9
第三章 小球碰撞的结果呈现 ................................................................................. 10
3.1 小球碰撞的效果图 .................................................................................................................... 10
3.2 不同方案的结果对比 ................................................................................................................ 12
第四章 小球碰撞检测结果分析和改进意见 ......................................................... 13
4.1 结果分析 .................................................................................................................................... 13
4.1.1 方案一 基础方案 ................................................................................................................................13
4.1.2 方案二 碰撞计数加速 ........................................................................................................................14
4.1.3 方案三 共享内存加速 ........................................................................................................................15
4.1.4 方案四 多流加速 ................................................................................................................................16
4.2 几种可行的改进方案 ................................................................................................................ 17
4.2.1 方案三的改进方案 ..............................................................................................................................18
4.2.2 方案四的改进方案 ..............................................................................................................................18
4.2.3 其他改进方案 ......................................................................................................................................18
第五章 总结 ............................................................................................................. 20
5.1 小球碰撞检测总结 .................................................................................................................... 20
5.2 GPU 编程的总结 ......................................................................................................................... 20