《表2 并行PCG算法与CG算法的运行时间和加速比表Table 2 Comparison of the runtime and speedup of CG and parallel PCG》

《表2 并行PCG算法与CG算法的运行时间和加速比表Table 2 Comparison of the runtime and speedup of CG and parallel PCG》   提示:宽带有限、当前游客访问压缩模式
本系列图表出处文件名:随高清版一同展现
《基于并行预处理算法的三维重力快速反演》


  1. 获取 高清版本忘记账户?点击这里登录
  1. 下载图表忘记账户?点击这里登录

在计算速度上,我们选取Pilkington[10]在1997年提出的残差记录方式,通过下降曲线的比较来反映不同算法在三维重力反演中收敛的快慢。本文对所有算法选择计算500次迭代,统计公式为:R=(g-Gρ)T(g-Gρ)/N,记录的曲线如图5。与传统的CG算法相比,PCG算法残差曲线明显下降较快,表明其用较少的迭代次数即可达到相同的残差。由图5可以看到,迭代500次后,传统的CG算法和并行的DCPG算法最小残差能达到0.275,并行的SSOR-PCG算法能达到0.013。如同图中黑色直线截取指示,当反演达到同一残差(0.04)的时候,SSOR-PCG算法只需要12次迭代计算,而DPCG算法和传统CG算法分别需要46和100次迭代计算。由于系数矩阵A的变化,每次迭代计算中分解预处理矩阵也需要额外不可忽略的计算时间,因此计算效率需由迭代时间和总计算用时共同决定。表2给出了3个算法的计算用时及加速比。对于网格大小为20×20×10的三维重力反演计算,选取500次迭代时,并行的PCG算法相比串行的CG算法只有2.2倍。然而实际上迭代终止于同一迭代残差(0.04)时候,相比于CG算法,并行DPCG可以达到4.7倍加速比,并行SSOR-PCG算法能获得18.7倍的加速比。综上,并行的SSOR-PCG预处理方法在三维重力数据反演中效果最好,反演出的密度更接近真实密度,模型更加紧致,在计算速度上可比传统串行的CG算法获得高达18.7倍的加速比,减少了计算耗时,提高了三维密度反演效率。