论文部分内容阅读
绿色计算是当前高性能计算领域最为关注的话题之一,降低系统功耗、提高系统效能是维持超级计算机向更大规模系统发展的重要途径。异构并行系统已成为当前高性能计算机系统发展的重要趋势之一,与传统同构并行系统相比,集成有专用加速部件的异构并行系统具有更高的峰值计算速度和峰值效能。然而,由于异构处理器间计算速度和功耗开销的不同,已有的面向同构系统的功耗优化方法难以高效应用于异构并行系统。本文针对异构系统的功耗优化问题展开研究,主要工作与创新包括:1.提出异构系统功耗感知的并行循环调度方法(第二章)并行循环是科学与工程计算程序中的主要优化对象,文章以类OpenMP并行程序为研究对象,研究在满足性能约束的条件下结合异构系统并行循环调度和处理器动态电压频率调节技术优化系统功耗。首先建立了异构系统功耗感知的并行循环调度问题基本模型,然后通过分析方法给出异构系统并行循环调度的能耗下界,该下界可用于评估功耗优化方法的执行效率。进而,将异构系统并行循环调度问题归纳为一般整数规划问题,给出了该问题的求解方法。2.提出异构系统功耗感知的多计算段频率调节与任务划分方法(第三章)并行程序一般由多个串行段和并行段程序组成,根据并行计算段是否由异构处理器并行完成,文章将异构并行程序划分为同构计算段程序和异构计算段程序。针对同构计算段程序,首先建立了各计算段能耗与执行时间的关系;进而分析得出在总执行时间约束的条件下,多计算段程序达到能耗最优的条件,并给出能耗最优的计算段运行频率选择算法。针对异构计算段程序,首先分析得出时间约束下异构并行处理在单并行段内达到能耗最优的条件,进而建立各计算段能耗与执行时间的关系。在给定执行时间的约束下,将多计算段程序能耗问题描述为一般多元极值问题,并给出了基于最优下降的启发式求解算法。3.提出异构系统通信感知的全程序能耗优化方法(第四章)当前异构并行系统中,主处理器与加速部件大都通过系统总线连接,调用加速部件执行特定计算过程的同时必然伴随不可忽略的通信开销,因此应综合考虑加速部件引入的计算能耗和通信能耗以最小化系统整体能耗开销。文章提出了两种优化方法:基于整数线性规划的静态能耗优化方法和基于遗传算法的动态能耗优化方法,在满足性能约束的条件下优化全系统能耗开销。静态优化方法将并行任务的划分和调度以及处理器频率选择过程描述为整数线性规划问题,给出了该问题的最优解求解方法。动态优化方法在程序的执行过程中依据程序历史执行信息,反复应用通信感知的任务划分算法和动态频率调节算法在线优化程序能耗开销。4.提出异构系统应用感知的最大功耗管理方法(第五章)随着系统功耗不断增大,功耗不仅是系统优化的目标之一,而且逐渐成为影响系统设计与实现的重要约束之一。针对多道程序在异构并行系统上的执行模型,文章提出了一种层次化的最大功耗管理策略,旨在满足系统功耗约束的条件下,优化系统整体性能。首先对当前异构并行系统执行模型进行了抽象,并提出了融合三级功耗控制机制的系统功耗管理框架。在异构并行处理引擎级功耗控制中,文章提出了应用感知的最大功耗管理方法。首先,通过分析方法给出了异构处理器在给定功耗约束的条件下达到性能最优的条件。基于该结果,给出了功耗受限的并行任务划分算法,该方法通过协调并行任务划分和动态电压频率调节技术以优化异构并行处理。在异构并行处理组级功耗控制中,提出了基于关键线程的功耗划分策略,将功耗优先分配给处于关键路径上的线程;在系统级功耗控制中,我们建立了异构并行处理组效能评估方法,以此作为功耗划分的依据,在兼顾并发应用公平性的同时,提高系统整体执行效能。