GPU加速SPH算法的研究与实现

[复制链接]
查看: 245|回复: 0

2万

主题

3万

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
72280
发表于 2022-9-28 15:52:44 | 显示全部楼层 |阅读模式
目:


雅宝题库答案
****此区域为收费内容****    需支付 1 知识币后可查看,1币=0.01元查看答案


雅宝题库解析:
光滑粒子流体动力学(SPH)方法是流体力学计算领域中应用比较广泛的方法,其基本思想是将整个流场的物质离散为一系列具有质量、速度和能量的粒子,通过核函数估值,可以计算流场中不同位置的粒子在不同时刻的各种动力学量。该方法避免了拉格朗日网格方法中的网格缠绕和扭曲题目,被广泛应用于大变形计算分析中。基于SPH方法的流体模拟是一种在工程应用、电影和游戏等行业中发展很快的技术。实时应用程序中需要对流体进行快速的模拟,随着模拟场景越来越复杂,需要模拟大量的粒子以展现逼真的视觉效果,而SPH方法是计算密集型方法,CPU的计算能力远远达不到实时应用的需求,图形处理器(GPU)的快速发展以及基于GPU的通用计算(GPGPU)的不断完善,为基于GPU的SPH并行加速提供了良好条件。        本文的主要工作和取得的成果如下:1.        在深入理解SPH算法思想和执行步骤的基础上,对串行SPH程序的瓶颈和缺陷进行了详细分析,通过对SPH各步骤间的数据依赖关系的分析和对算法执行过程中计算存储比的分析,结合CUDA(计算统一设备体系架构)并行编程模型,提出基于GPU的SPH并行化方案。2.        针对串行SPH程序中邻居粒子搜索占用大量运行时间和存储空间的题目,给出CUDA实现的邻居粒子搜索方法。该方法通过缩小搜索范围提高搜索效率,计算过程中不存储邻居粒子信息,只有在计算密度和力时才在候选粒子中搜索真正的邻居粒子。此方法增加了对粒子进行排序和邻居粒子重复判定的时间,但节省了存储空间,可以支持更大规模粒子的模拟,且具有良好的并行性,可以充分利用GPU的并行计算资源。3.        对于密度和力的计算,设计两种粒度的并行方案,分别为一个线程对应一个网格的计算和一个线程对应一个粒子的计算。后者加速比可以达到190倍。4.        针对CUDA不同存储器的访存特点,对并行SPH程序的数据访存进行优化,通过对CUDA中不同存储器的合理利用,大大提高了程序运行性能。





上一篇:基于CMMI的航天A院项目质量管理研究
下一篇:机载波分复用网络关键技术研究
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩课程推荐
|网站地图|网站地图