计算机工程与科学 ›› 2024, Vol. 46 ›› Issue (08): 1349-1360.
代长威1,孔瑞林1,季哲1,2,3
DAI Chang-wei1,KONG Rui-lin1,JI Zhe1,2,3
摘要: 离散粒子法在解决前沿科学和工程领域中的复杂多尺度问题中具有广泛的应用。针对离散粒子大规模多尺度计算中相邻粒子对搜索过程计算复杂度显著增加和并发度下降的问题,提出了一种适用于众核架构(CPU/GPU)的高并发、低内存占用并行近邻搜索算法。通过提出一种基于多层嵌套网格概念的层间相互作用方法,解决了不同层级间粒子对相互搜索时的数据竞争问题;通过引入非对称映射方法,避免了粒子在多级链表上的全映射,降低了内存消耗。一系列数值实验表明,该算法可有效处理108量级粒子体积跨度变化的多尺度问题,相较于传统算法可取得2~8倍的加速效果和更低的内存消耗特性,基于GPU的算法实现可达到当前领先的计算效率。