【技术实现步骤摘要】
本专利技术涉及高性能计算系统计算阵列的节能方法。
技术介绍
随着高性能计算系统技术的不断发展,新一代大规模并行计算系统的研制面临许 多新的挑战。特别是随着系统性能的不断提升,规模越来越庞大,系统的能耗飞速增长,造 成了大规模计算系统的能耗危机。系统能耗和系统性能的比值正成为高性能计算的主要评 价指标之一。高性能计算系统通常包括前端服务阵列、计算阵列、后端存储阵列三个组成部分。 计算阵列由大量的计算结点组成,对外提供作业的执行服务。计算阵列作为高性能计算阵 列的主要能耗部件,是能耗优化研究和工程设计的重点。目前常见的计算阵列节能方法包 括1)限制可用结点数量的节能方法。根据计算系统的历史平均利用率P,关闭计算阵列 中百分比为(1-P)的计算结点,达到节能的目的。该方法会增加作业的平均等待时间,降低 用户满意度。此外该方法不能适应系统利用率频繁变化的用户环境。2)定时休眠空闲结点的节能方法。管理员手工设定一个时间参数T。当计算 结点空闲时间达到T后,将空闲结点置于S3休眠状态。S3休眠状态是ACPI (Advanced Configuration and Power Interface Specification)标准定义的计算系统的一种低功耗 状态,相比开机状态能够节省90% - 95%的能耗。广泛应用的slurm高性能资源管理系统 即采用该手工设定时间参数T的节能方法。如果T参数的设定时间过短,则计算结点可能 刚进入休眠状态,很快又被分配作业然后被唤醒,导致计算结点状态切换频繁,影响系统稳 定性。如果T参数的设定时间过长,则计算结点空闲很长时间后才进入 ...
【技术保护点】
一种基于空闲历史信息的计算阵列节能方法,其特征在于包括以下步骤:第一步,构造计算阵列节能系统,计算阵列节能系统是部署在高性能计算系统前端服务阵列中的服务器上的软件包,由能耗状态调节模块和能耗状态控制模块组成;能耗状态调节模块是节能优化决策模块,构造计算结点的空闲历史信息队列,根据空闲历史信息设定计算结点进入S3休眠状态的时间点,将计算结点休眠的时间点传递给能耗控制模块;能耗状态控制模块是节能优化实施模块,负责根据能耗状态调节模块指定的时间点将空闲计算结点置于S3休眠状态,在已eue[swtchlimits]J+hqueue[swchlimitsl-1])J)/2,其中hqueue[x].J表示hqueue队列从队列头开始的第x条记录的结点空闲时间长度J值,则根据空闲历史信息队列可预测该结点的能耗状态切换次数不会超过switchlimits限制,据此计算允许该结点进入S3休眠状态的时间点SleepTime=now+「(hqueue[switchlimits]J+hqueue[swichlimitg-1]J)/2」;第四步,能耗控制模块定期检测计算结点的状态,每当计算结点处于空闲状态而且当 ...
【技术特征摘要】
一种基于空闲历史信息的计算阵列节能方法,其特征在于包括以下步骤第一步,构造计算阵列节能系统,计算阵列节能系统是部署在高性能计算系统前端服务阵列中的服务器上的软件包,由能耗状态调节模块和能耗状态控制模块组成;能耗状态调节模块是节能优化决策模块,构造计算结点的空闲历史信息队列,根据空闲历史信息设定计算结点进入S3休眠状态的时间点,将计算结点休眠的时间点传递给能耗控制模块;能耗状态控制模块是节能优化实施模块,负责根据能耗状态调节模块指定的时间点将空闲计算结点置于S3休眠状态,在已休眠计算结点被分配作业后唤醒计算结点;第二步,设定节能参数历史信息队列的时间窗口HISTORY_WINDOW,其取值决定了历史信息队列中保存的记录的时间约束;计算结点一天中允许能耗状态切换的次数SWITCHS_LIMIT;结点从空闲状态进入S3休眠状态的最短时间限制MINI_SUSPEND_TIME;第三步,能耗状态调节模块构造空闲历史信息队列,根据空闲历史信息设定计算结点进入S3休眠状态的时间点,方法是3.1构造空闲历史信息队列hqueue,空闲历史信息队列的每条记录包括结点空闲开始时间戳S、结点本次空闲时间长度J;每当计算节点进入空闲状态时,记录当前时间为计算结点的空闲开始时间m;每当计算结点被分配作业时,当前时间为n,则在空闲历史信息队列中增加一条记录,该记录的值S=m,J=n-m;空闲历史信息队列按照J的值从大到小排序,J值大的记录放在队列前面;3.2定期检查hqueue队列中的记录项,删除S值小于T1的过期历史记录T1=当前时间-HISTORY_WINDOW;3.3当计算结点上的作业全部结束时,能耗状态调节模块按以下方法动态设定允许该计算结点进入S3休眠状态的时间点SleepTime,达到节能目标,方法是3.3.1在该计算结点的hqueue队列中检索S值最小的记录,将该记录的S值记为earlist,当前系统时钟为now,则hqueue队列的时间跨度timewidth=now earlist;3.3.2在timewidth时间区间内,计算允许的能耗状态切换次数switchlimits ,switchlimits = +1,其中DAY为一天中的秒数,即24*3600,为下取整操作;3.3.3从hqueue队列头开始检索前swithclimits条记录,如果hqueue队列中记录的总条数小于swithchlimits,说明该计算结点历史空闲的次数低于允许的能耗状态切换限制,设定该计算结点进入休眠状态前的空闲时间长度为T2,T2=MINI_SUSPEND_TIME,则SleepTime= now+MINI_SUSPEND_TIME,转第四步; 3.3.4设定该计算结点进入休眠状态前的空闲时间长度为T3,T3=,其中hqueue[x].J表示hqueue队列从队列头开始的第x条记录的结点空闲时间长度J值,则根据空闲历史信息队列可预测该结点的能耗状态切换次数不会超过switchlimits限制,据此计算允许该结点进入S3休眠状态的时间点SleepTime=now+;第四步,能耗控制模块定期检测计算结点的状态,每当计算结点处于空闲状态而且当前时间超过计算结点能耗状态模块设定的休眠时间点SleepTime,则将该计算结点置于S3休眠状态; 第五步,高性能计算系统的资源分配软件负责分配用户作业所占用的计算结点,计算结点能耗控制模块检测到S3休眠状态的计算结点被分配作业后,调用操作系统提供的ACPI控制接口唤醒该结点。 2010102820774100...
【专利技术属性】
技术研发人员:陈海涛,卢宇彤,周恩强,谢旻,曹宏嘉,董勇,蒋艳凰,所光,
申请(专利权)人:中国人民解放军国防科学技术大学,
类型:发明
国别省市:43[中国|湖南]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。