摘要
改进SMAC(Simplified Marker and Cell)算法,增强其对流体模拟的实时处理能力。采用点差分格式对求解压力场和速度更新的偏微分方程进行离散化;引入消除数据相关性的存储算法以减少数据传输,并借助分层存储机制提高访存比,采用并行归约增加线程并行度;在统一计算设备架构平台下,对离散化的SMAC算法进行改进、优化及并行化实现。纯粹计算及多次迭代模拟实验结果显示,改进算法提速明显,可实现对一般场景的实时模拟。
SMAC (Simplified Marker and Cell) algorithm is improved in order to enhance the ability of real time processing for fluid simulation. The algorithm is discretized for solving pressure field and update speed used by central difference scheme. A data storage algorithm that can eliminate data correlation is proposed to reduce data transmission. Usage of memory is optimized based on CUDA and the parallel computing threads into appropriate blocks is organized to make better use of stream multiprocessor in GPU. The discretization of the SMAC algorithm is improved, optimized and parallel implemented under the CUDA (unified computing device architecture) platform. Result show that GPU-based implementation of SMAC can achieve a significant speedup compared with CPU based counterpart both in the SMAC algorithm and in real simulation. Therefore the improved algorithm can achieve real-time simulation of the general scene.
作者
常立博
杜慧敏
韩俊刚
CHANG Libo DU Huimin HAN Jungang(School of Electronic Engineering, XFan University of Posts and Telecommunications, Xi'an 710121, China School of Computer Science and Technology, Xi'an University of Posts and Telecommunications, Xi'an 710121, China)
出处
《西安邮电大学学报》
2016年第5期33-38,共6页
Journal of Xi’an University of Posts and Telecommunications
基金
国家自然科学基金资助项目(61136002)
西安市科技发展计划资助项目(CXY1440(10))
关键词
计算流体力学
统一计算设备架构
并行算法
computational fluid dynamics, compute unified device architecture, parallel algorithm