基于服务等级协议的yarn资源分配和节能调度方法及系统的制作方法_4

文档序号:9274605阅读:来源:国知局
是将具体的控制权完全交给用户,用户可以通过自 己编程对接口进行操作。本发明通过对CPUfreq子系统提供的用户空间调控器接口进行操 作来动态调整处理器频率,算法2描述了本发明具体的节能调度策略。
[0137]
[0138] 应用程序的AM首先向RM中的SLA
资源调度器请求资源(用Container表示), 再将得到的资源进一步分配给内部的任务。一旦确定该任务后,AM需将该任务的运行环境 (包含运行命令、环境变量、运行频率以及依赖的外部文件等)连同Container中的资源信 息封装到启动资源的Context对象中,进而与对应的匪通信以启动该任务。任务启动后会 自动执行Context对象中的命令,进而通过CPUfreq子系统调整Container中所有CPU核 的频率,算法中对频率的动态调整保证了整个架构的有效性和可靠性。
[0139] 由于CPUfreq模块底层是基于各个CPU厂商的默认ACPI驱动进行频率调节的,例 如Intel的SpeedStep和AMD的PowerNow高级电源管理硬件驱动均会自动根据CPU运行 频率对主板供电进行合理电压匹配,所以在使用CPUfreq对CPU的频率进行调节的过程中, 系统会自动匹配合适的CPU电压,使CPU能在指定频率下正常工作,因此,只需通过CPUfreq 模块对CPU核心频率进行调节,即可同时做到对CPU核心频率和电压的调节。
[0140] 上述虽然结合附图对本发明的【具体实施方式】进行了描述,但并非对本发明保护范 围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不 需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
【主权项】
1. 基于服务等级协议的YARN资源分配和节能调度方法,其特征是,包括如下步骤: 步骤(1):在提交MapReduce程序前,对每个MapReduce程序进行预分析,SP从 MapReduce程序过去的运行日志中解析出所需的性能指标; 步骤(2):在提交MapReduce程序后,根据步骤⑴解析出的性能指标,计算每个MapReduce程序最差执行情况下任务的最低并行度; 步骤(3):根据每个MapReduce程序各自的最低并行度,为每个MapReduce程序分配不 同的资源容器; 步骤(4):监控每个MapReduce程序的任务完成情况,并据此得出剩余任务的理想执行 时间和预期执行频率; 步骤(5):根据剩余任务的预期执行频率,利用CPUfreq子系统动态调节CPU的电压和 频率,从而达到节能的目的。2. 如权利要求1所述的基于服务等级协议的YARN资源分配和节能调度方法,其特征 是, 所述步骤⑴中: 如果所述MapReduce程序从未在集群中运行过,则在一个设定的数据集上预先执行MapReduce程序来解析出所需的性能指标。3. 如权利要求1所述的基于服务等级协议的YARN资源分配和节能调度方法,其特征 是,所述步骤(2)的具体步骤为: 步骤(201):在提交MapReduce程序时,将MapReduce程序的性能指标提交到资源管理 器中; 步骤(202):当MapReduce程序加入作业队列后,根据MapReduce程序的性能指标利用 边界定理预估MapReduce程序在最差执行情况下的完成时间; 步骤(203):根据步骤(202)中得出的完成时间的上限,计算出程序map和reduce两 阶段任务的最低并行度。4. 如权利要求1所述的基于服务等级协议的YARN资源分配和节能调度方法,其特征 是,所述步骤(3)中资源分配的步骤为: 步骤(301):当程序」被提交后:首先完善程序模型(/ /,;,/?/,/)/,〖义以); 步骤(302):当收到来自节点n的心跳时:首先根据最早截止时间优先算法EDF对程序 队列排序;然后对每个空闲的资源容器c重复步骤(303); 步骤(303):对每个程序j重复步骤(3031); 步骤(3031):如果M/小于将资源容器c分配给应用程序管理器来执行具有最高 资源请求优先级的map任务;否则如果M/大于或者等于CMFR并且i?[小于将资源容器 c分配给应用程序管理器来执行reduce任务; 步骤(304):结束。5. 如权利要求1所述的基于服务等级协议的YARN资源分配和节能调度方法,其特征 是,所述步骤(5)的节能方法为: 步骤(501):当程序j启动后:将%和L加入到任务监控集;设置任务频率//为最高 可用频率; 步骤(502):当得到资源容器c时:如果c用于执行map任务,在c所在的节点上启动map任务;否则如果c用于执行reduce任务,循环步骤(503); 步骤(503):性能监控器首先给出剩余任务的理想执行时间 频率估计器根据执行 时间重设任务频率在c所在的节点上以频率//启动reduce任务; 步骤(504):结束。6. 基于服务等级协议的YARN资源分配和节能调度系统,其特征是,包括: 程序分析器:在提交MapReduce程序前,对每个MapReduce程序进行预分析,SP从MapReduce程序过去的运行日志中解析出所需的性能指标;并将解析出的性能指标传输给 资源管理器的并行度估计器; 并行度估计器:在提交MapReduce程序后,根据解析出的性能指标,计算每个MapReduce程序最差执行情况下任务的最低并行度;并将最低并行度传输给资源管理器的 SLA资源调度器; SLA资源调度器:根据每个MapReduce程序各自的最低并行度,为MapReduce程序分配 不同的资源容器,并将资源容器的所在机架和节点位置信息传输给应用程序管理器; 应用程序管理器:监控每个MapReduce程序的任务完成情况,并据此得出剩余任务的 理想执行时间和预期执行频率;所述应用程序管理器将预期执行频率传输给CPUfreq子系 统; CPUfreq子系统:根据剩余任务的预期执行频率,动态调节CPU的电压和频率,从而达 到节能的目的。7. 如权利要求6所述的基于服务等级协议的YARN资源分配和节能调度系统,其特征 是,所述程序分析器中:如果所述MapReduce程序从未在集群中运行过,则需要在一个设定 的数据集上预先执行MapReduce程序来解析出所需的性能指标。8. 如权利要求6所述的基于服务等级协议的YARN资源分配和节能调度系统,其特征 是,所述并行度估计器,包括: 性能指标接收模块:在提交MapReduce程序时,程序分析器将MapReduce程序的性能指 标提交到资源管理器中; 完成时间预估模块:当MapReduce程序加入作业队列后,根据MapReduce程序的性能指 标利用边界定理预估MapReduce程序在最差执行情况下的完成时间; 最低并行度计算模块:根据完成时间预估模块中得出的完成时间的上限,计算出程序map和reduce两阶段任务的最低并行度。9. 如权利要求6所述的基于服务等级协议的YARN资源分配和节能调度系统,其特征 是, 所述应用程序管理器包括性能监控器和频率估计器, 性能监控器,将MapReduce程序的任务划分为"已完成任务"、"正在运行的任务"和"尚 未开始的任务"三类;性能监控器实时收集已完成任务的完成时间,并据已完成任务的完成 时间计算出未完成任务的理想执行时间; 频率估计器,负责根据性能监控器的未完成任务的理想执行时间来匹配未完成任务的 预期执行频率。10.如权利要求6所述的基于服务等级协议的YARN资源分配和节能调度系统,其特征 是, 所述CPUfreq子系统:在启动MapReduce任务时将预期执行频率封装到任务的运行环 境变量中,从而降低芯片的运行电压和频率,最终达到节能的目的。
【专利摘要】本发明公开了基于服务等级协议的YARN资源分配和节能调度方法及系统,步骤如下:在提交MapReduce程序前对其进行预分析,从该程序过去的运行日志中解析出所需的性能指标;在提交MapReduce程序后,根据其性能指标计算出基于完成时间上限的最低任务并行度;根据每个MapReduce程序不同的并行度,通过SLA资源调度器为其分配定量的资源;监控每个MapReduce程序的任务完成情况,并据此得出剩余任务的理想执行时间和频率;根据剩余任务的预期执行频率,利用CPUfreq子系统动态调节CPU的电压和频率,从而达到节能的目的。本发明在保证MapReduce程序服务等级协议的前提下为其分配定量资源,并结合动态电压频率调整技术最大限度地降低云计算平台中的能耗。
【IPC分类】G06F9/50, G06F1/32
【公开号】CN104991830
【申请号】CN201510404752
【发明人】鞠雷, 贾智平, 李萍
【申请人】山东大学
【公开日】2015年10月21日
【申请日】2015年7月10日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1