论文部分内容阅读
由于单机处理能力有限,大规模科学计算和海量数据分析等应用通常需要借助由高速网络将多个计算单元连接组成的分布式计算系统进行处理,尤其是通过大量廉价且性能参数各异的计算单元组成的异构计算系统,由于其具有功能互补和可扩展强等优势,在大数据、超级计算、网格计算和云计算等领域均有广泛的应用。然而,随着数量和规模的不断增长,这些计算系统的能耗问题也日益突出,不仅带来高额的电力支出,同时也产生了严重的环境问题,使得信息产业逐渐成为一个高耗能行业。因此,降低计算系统的能耗,尤其是通过软件技术提高应用对计算资源使用的能源效率,已经成为亟待解决的现实问题,受到学术、工业和政府各界广泛的关注和支持。本文主要研究通过任务调度的方式降低并行应用在异构计算系统上执行的能耗,同时兼顾总体完成时间最小化的目标。针对现有方法在调度方案优化确定性、调度性能和运行开销方面存在的不足,本文的目标是研究能够实现具有优化确定性、调度性能更优和运行开销更小的节能任务调度方法,具体步骤包括:任务排序、处理机分配和频率选择,构成最终调度方案的不同要素。本文从调度方案的解结构出发,通过逐步减少问题限制,研究不同要素对调度性能的影响,设计相应的节能任务调度算法,并通过理论证明和实验验证的方式评估方法的有效性。本文的主要工作和贡献包括:(1)对节能任务调度问题的模型和复杂度进行了分析,总结了降低应用执行能耗的技术路线。传统任务调度以追求总体完成时间最短为主要目标,节能任务调度在此基础上增加了能耗优化目标,而时间和能耗目标具有非正交性,使得节能任务调度问题变得更为复杂。通过对经典算法的分析和实验发现,传统任务调度方法存在过量使用处理机的问题,产生了不必要的能耗开销,本文提出一种启发式处理机去冗余方法,并形成通过减少处理机数量降低能耗的技术路线。此外,动态电压频率调节作为另一种技术路线,被现有节能任务调度方法广泛采用,通过松弛时间回收技术实现任务降频执行从而降低应用的总能耗,本文指出该技术在能耗优化方面的确定性以及在多频率组合条件下针对单个任务可获得最优解的特性。(2)在任务排序和处理机分配确定的条件下,考虑频率选择对调度性能的影响,提出一种基于线性规划的最优节能任务调度方案的求解方法。仅考虑频率选择时,能耗优化是在给定一个时间优化调度方案的基础上进行的,节能任务调度问题被转换为一个关于能耗的单目标最小化问题,可通过线性规划求解,本文给出了具体的建模方法:通过引入频率占空系数和任务间隔时间两种决策变量,建立能耗优化目标函数,并根据给定调度方案中的任务依赖和完成时间约束建立等价的线性约束条件。最终,利用现有的线性规划工具可在多项式时间内求得能耗最小的频率选择方案,由此证明在任务排序和处理机分配确定的条件下仅考虑频率选择进行节能调度优化是一个P问题。通过在随机任务图上的对比实验,验证了该方法相比经典的传统任务调度算法HEFT可以节约11.5%的能耗,同时相比同类算法EES和MVFS-DVFS在运行效率上提升了3倍。(3)在任务排序确定的条件下,考虑处理机分配和频率选择对调度性能的影响,提出一种基于变邻域搜索的节能任务调度优化方法。考虑处理机分配和频率选择时,节能任务调度需要同时考虑时间和能耗最小化的目标。现有方法多采用设计归一化算子将双目标优化转化为单目标优化,不能保证调度方案的优化确定性且调度性能并不理想。针对该问题,本文以一个时间优化的调度方案作为初始解,提出通过变邻域搜索获得优化解的方法,分别设计旨在降低时间和能耗的两种邻域结构,通过在不同邻域间的变换避免局部最优陷阱。此外,以初始解作为基线,对局部搜索进行剪枝优化,提高搜索效率。算法的设计过程保证了调度方案的优化确定性,同时,在随机生成和两个数值计算应用任务图上的实验结果表明,该方法突破了仅考虑频率选择的优化瓶颈,在时间和能耗方面分别可以实现1.3%和22.3%的优化。(4)综合考虑任务排序、处理机分配和频率选择对调度性能的影响,提出一种基于多目标模因算法的节能任务调度优化方法。以进化算法作为基本框架,通过遗传操作探测不同的任务序列,利用基于最早完成时间的启发式方法获得时间优化的调度方案,由此实现在可行域内快速定位良好的调度方案,再通过此前提出的基于变邻域搜索的方法搜索局部优化解,考虑到运行效率,局部搜索将按概率被启动。为保证优化确定性和加速收敛,算法引入一个时间优化调度方案作为遗传种子和性能基线,同时,建立帕雷托档案并通过非支配排序记录和更新搜索过程中的优化解。实现结果表明,得益于在全部可行域进行搜索,该方法在时间和能耗方面可以实现4.4%和29.9%的优化。同时,进化效率相比同类算法HECS提升了近180倍。