摘要

三维泊松方程求解算法被广泛应用在电磁、流体、地质等领域,有着极其重要的现实意义.但现有实现方法无法满足高精度网格下的性能需求,针对该问题,提出一种基于多GPU加速的三维泊松方程求解算法(MGPES).MPGES通过分析泊松方程求解过程中的计算和访存特征,发掘可并行的热点函数,将计算任务均分给多个同构GPU.根据CPU和GPU下的计算速度和访存性能,提出一种基于CPU/GPU协同计算下的负载均衡模型.在该模型的基础上,充分利用空闲CPU的计算能力,提出一种基于多CPU+GPU协同异构平台的三维泊松方程求解算法(COPES).实验结果表明,在8GPU平台下,MGPES最高并行加速比能达到7.72,COPES的最高并行加速比能达到7.81.两种算法均可以达到线性加速比,拥有良好的可扩展性.