论文部分内容阅读
科学计算伴随着计算机的发展在众多应用领域得到了广泛的应用,同时,多核处理器的普及有力地推进了并行计算在科学计算中的主导地位。对角矩阵求解是并行计算应用的一个重要方面,诸如计算机图形学、流体力学、泊松方程求解、三次样条曲线、萃取精馏塔以及大气模式等很多领域都涉及对角矩阵求解的科学计算问题。但现实中,科学计算应用的实际运行性能与期望性能的差距与日俱增,尤其大数据时代的到来让这一问题变得更加重要与紧迫,同时也促进了并行计算的进一步应用与发展。
论文重点研究和优化了对角矩阵求解的并行性效率问题。
首先,从算法的应用层面,以SPIKE2算法为主体框架,通过对SPIKE算法进行优化并结合Pivot算法提出一种并行求解对角矩阵的T-ISPA算法。该算法在保证提高求解效率的同时兼顾了计算结果的数值稳定性与内存数据布局转换机制的优化问题;针对严格对角占优矩阵,在T-ISPA并行求解算法的基础上提出了扩展算法SPIKE2-Thomas和SPIKE2-CR算法。
其次,面对应用更为广泛的多对角矩阵的求解问题,为消除广义共轭余差算法在计算过程中的数据相关性,减少同步次数和降低并行进程间的通信开销,提出了具有自启动功能的IGCR算法。将该算法应用到几何多重网格光滑迭代过程中,对各向异性网格又进行了强耦合聚合处理,提出了具有强耦合几何多重网格的SCMC算法。通过设计的MPI多进程并行方案,提高了IGCR算法和SCMC算法中矩阵向量乘以及内积的并行进程处理能力。
第三,为了进一步支持应用程序的执行效率,本文又从提高计算资源并行性的角度出发,在应用程序到计算资源的映射过程中,提出了HPMC进程调度算法。该算法依据低阶对角矩阵所对应的DAG图,以传统的表调度算法为理论基础,在异构多核处理器硬件运行环境下,通过进程聚簇技术提升了进程调度优先级的筛选机制,在进程映射到多核的过程中引入了进程复制方法,减少了进程间的通信时间。最后通过实验测试,表明HPMC进程调度算法相比于HEFT算法和CPOP算法能用更少的时间完成进程到多核的映射与执行,较好地支撑了需要高度并行的矩阵求解问题。
最后,针对HPMC进程调度算法的性能受进程数大小的影响存在时滞现象,提出了一种基于改进烟花算法的高阶对角矩阵并行调度算法PSIFWA。PSIFWA算法首先通过设计烟花的位置编码,将连续空间映射到离散空间;然后通过改进高斯变异过程,设置自适应高斯变异维数以保证种群多样性,从而达到加快算法收敛速度的目的。最后为降低算法的时间复杂度,缩短找到最优进程调度序列所用时间,采用基于适应度值的锦标赛选择策略,避免了基于欧氏距离的轮盘赌选择策略时间开销过大的弊端。实验验证了在密集进程运行环境下,PSIFWA算法比HPMC算法、基本烟花算法、遗传算法及粒子群算法都有较好的时间性能,它能在较少的迭代次数内找到最优解,收敛速度更快,在进程数增大时仍能保持良好的寻优速度和求解精度。
论文重点研究和优化了对角矩阵求解的并行性效率问题。
首先,从算法的应用层面,以SPIKE2算法为主体框架,通过对SPIKE算法进行优化并结合Pivot算法提出一种并行求解对角矩阵的T-ISPA算法。该算法在保证提高求解效率的同时兼顾了计算结果的数值稳定性与内存数据布局转换机制的优化问题;针对严格对角占优矩阵,在T-ISPA并行求解算法的基础上提出了扩展算法SPIKE2-Thomas和SPIKE2-CR算法。
其次,面对应用更为广泛的多对角矩阵的求解问题,为消除广义共轭余差算法在计算过程中的数据相关性,减少同步次数和降低并行进程间的通信开销,提出了具有自启动功能的IGCR算法。将该算法应用到几何多重网格光滑迭代过程中,对各向异性网格又进行了强耦合聚合处理,提出了具有强耦合几何多重网格的SCMC算法。通过设计的MPI多进程并行方案,提高了IGCR算法和SCMC算法中矩阵向量乘以及内积的并行进程处理能力。
第三,为了进一步支持应用程序的执行效率,本文又从提高计算资源并行性的角度出发,在应用程序到计算资源的映射过程中,提出了HPMC进程调度算法。该算法依据低阶对角矩阵所对应的DAG图,以传统的表调度算法为理论基础,在异构多核处理器硬件运行环境下,通过进程聚簇技术提升了进程调度优先级的筛选机制,在进程映射到多核的过程中引入了进程复制方法,减少了进程间的通信时间。最后通过实验测试,表明HPMC进程调度算法相比于HEFT算法和CPOP算法能用更少的时间完成进程到多核的映射与执行,较好地支撑了需要高度并行的矩阵求解问题。
最后,针对HPMC进程调度算法的性能受进程数大小的影响存在时滞现象,提出了一种基于改进烟花算法的高阶对角矩阵并行调度算法PSIFWA。PSIFWA算法首先通过设计烟花的位置编码,将连续空间映射到离散空间;然后通过改进高斯变异过程,设置自适应高斯变异维数以保证种群多样性,从而达到加快算法收敛速度的目的。最后为降低算法的时间复杂度,缩短找到最优进程调度序列所用时间,采用基于适应度值的锦标赛选择策略,避免了基于欧氏距离的轮盘赌选择策略时间开销过大的弊端。实验验证了在密集进程运行环境下,PSIFWA算法比HPMC算法、基本烟花算法、遗传算法及粒子群算法都有较好的时间性能,它能在较少的迭代次数内找到最优解,收敛速度更快,在进程数增大时仍能保持良好的寻优速度和求解精度。