CN105700951A - 一种实现cpu业务迁移的方法及装置 - Google Patents

一种实现cpu业务迁移的方法及装置 Download PDF

Info

Publication number
CN105700951A
CN105700951A CN201410691203.XA CN201410691203A CN105700951A CN 105700951 A CN105700951 A CN 105700951A CN 201410691203 A CN201410691203 A CN 201410691203A CN 105700951 A CN105700951 A CN 105700951A
Authority
CN
China
Prior art keywords
business
cpu
migration
data surface
factor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410691203.XA
Other languages
English (en)
Other versions
CN105700951B (zh
Inventor
严军
肖鹏
宋亚东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201410691203.XA priority Critical patent/CN105700951B/zh
Priority to PCT/CN2015/073414 priority patent/WO2016082360A1/zh
Publication of CN105700951A publication Critical patent/CN105700951A/zh
Application granted granted Critical
Publication of CN105700951B publication Critical patent/CN105700951B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)
  • Power Sources (AREA)

Abstract

本申请公开了一种实现CPU业务迁移的方法及装置,包括:设置系统CPU使用用户模式,还包括:当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。本发明通过设置CPU负荷阈值触发进行业务迁移的调整,根据迁移阈值对调整进行判断,实现CPU上业务在满足设定迁移阈值时的调整,降低了CPU的能耗。另外,通过低负荷迁移因数和低负荷迁移阈值的设定,按照预先设置的CPU递减策略进行调整和业务迁移,进一步降低了CPU能耗和提高了CPU能耗调整的效率。

Description

一种实现CPU业务迁移的方法及装置
技术领域
本申请涉及计算机技术,尤指一种实现CPU业务迁移的方法及装置。
背景技术
CPU的节能通常在芯片本身支持的降频和关核等技术基础上实现,关键在于节能的策略不同。对不同的操作系统(OS)目前有相应的节能策略,比如Linux操作系统,针对X86的CPU提供了多种频率调节器;其中,Ondemand调节器,在支持的可变频率范围内,根据负荷自动调节CPU核的工作频率;Performance调节器,将CPU设置为所支持的最高频率运行,以提供最优的性能;Userspace调节器可以根据需要,设置CPU工作在特定的频率而不受CPU负荷的影响。除此之外,对其他操作系统及不同类型的CPU也存在相应的用于CPU的节能调整的调节器。对于不同的操作系统和不同型号的CPU都存在与X86的CPU上的Userspace调节器相同的调节器。一般的,可以将这一类调节器称为用户模式的调节器,在CPU上设置用户模式调节器也叫做设置系统CPU使用用户模式。
传统的CPU节能方法通常设置系统工作的模式,比如“节能模式”、“高性能模式”等,通过按键或其他手动操作的方式触发系统进入节能模式。或者通过检测CPU的占有率计算需要调整的CPU目标频率,这种方式可以将CPU核都调节至最低频率运行,但是在低业务量情况下,依然存在较大的能耗浪费,无法做到最优的节能效果。
发明内容
为了解决上述问题,本发明提供一种实现CPU业务迁移的方法及装置,能够降低CPU的能耗,更好的实现系统节能。
为了达到本发明的目的,本申请提供一种实现CPU业务迁移的方法;包括:设置系统CPU使用用户模式,还包括:
当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。
进一步地,该方法之前还包括:根据系统业务线程对CPU性能要求不同,划分控制面核和数据面核,并记录业务应用线程在数据面核中的分布;
在系统启动时,设置数据面核为排他绑定核;业务应用线程启动时,设置亲和性绑定至各个数据面核。
进一步地,业务迁移因数包含低负荷迁移因数;迁移阈值包含低负荷迁移阈值;所述按照预先设置的迁移策略将CPU上的业务进行迁移具体包括:
当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应按照预先设置的分配策略分配后,将对应的业务应用线程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求。
进一步地,业务迁移因数包含高负荷迁移因数;迁移阈值包含高负荷迁移阈值;所述按照预先设置的迁移策略将CPU上的业务进行迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程的分布恢复业务到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求。
进一步地,所有数据面核上CPU负荷比重的均值为:单位时间内各数据面核上的各业务运行的除管理开销以外所占的时间的累加;
负荷阈值包含高负荷阈值和低负荷阈值。
进一步地,业务迁移因数包含高负荷迁移因数和低负荷迁移因数;所述按照相应的预设步长及预设周期对业务迁移因数进行调整具体包括:
对高负荷迁移因数按照预设周期采用第一预设步长进行业务迁移因数的调整;
对低负荷迁移因数按照预设周期采用第二预设步长进行业务迁移因数的调整;
第一预设步长大于第二预设步长。
进一步地,将CPU上的业务进行迁移具体包括:
关闭数据面核上所有进行业务迁移的业务应用线程的业务相关定时器,进行业务迁移;
进行业务迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据所述记录的各数据面核上的业务应用线程业务恢复到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求;当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用进程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求;
在将业务迁移到的相应的数据面核上时,开启迁移业务的业务相关定时器,使业务应用线程继续工作。
另一方面,本申请还提供一种实现CPU业务迁移的装置,设置系统CPU使用用户模式,包括:调整单元和迁移单元;其中,
调整单元,当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
迁移单元,用于当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。
进一步地,该装置还包括面核绑定单元和设置面核单元;其中,
面核绑定单元,用于根据系统业务线程对CPU性能要求不同,划分控制面核和数据面核,并记录业务应用线程在数据面核中的分布;
设置面核单元,用于在系统启动时,设置数据面核为排他绑定核;业务应用线程启动时,设置亲和性绑定至各个数据面核。
进一步地,业务迁移因数包含低负荷迁移因数;所述迁移阈值包含低负荷迁移阈值;所述迁移单元具体用于,
当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用线程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求。
进一步地,业务迁移因数包含高负荷迁移因数;所述迁移阈值包含高负荷迁移阈值;所述迁移单元具体用于,
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程的分布恢复业务到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求。
进一步地,调整单元具体用于,将单位时间内数据面核上的各业务运行的除管理开销以外所占的时间的累加作为数据面核的负荷比重,当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
负荷阈值包含高负荷阈值和低负荷阈值。
进一步地,调整单元具体用于,
当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照、对高负荷迁移因数按照预设周期采用第一预设步长进行业务迁移因数的调整;对低负荷迁移因数按照预设周期采用第二预设步长进行业务迁移因数的调整;
第一预设步长大于第二预设步长。
进一步地,迁移单元具体用于,
当调整的业务迁移因数满足迁移阈值时,关闭数据面核上所有进行业务迁移的业务应用线程的业务相关定时器,进行业务迁移;
所述进行业务迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据所述记录的各数据面核上的业务应用线程业务恢复到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求;当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用进程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求;
在将业务迁移到的相应的数据面核上时,开启迁移业务的业务相关定时器,使业务应用线程继续工作。
与现有技术相比,本发明提供的技术方案,包括:设置系统CPU使用用户模式,还包括:当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。本发明通过设置CPU负荷阈值触发进行业务迁移的调整,根据迁移阈值对调整进行判断,实现CPU上业务在满足设定迁移阈值时的调整,降低了CPU的能耗。另外,通过低负荷迁移因数和低负荷迁移阈值的设定,按照预先设置的CPU递减策略进行调整和业务迁移,进一步降低了CPU能耗和提高了CPU能耗调整的效率。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本发明实现CPU业务迁移的方法的流程图;
图2为本发明实现业务迁移的示意图;
图3为本发明实现业务迁出和迁入的具体流程示意图;
图4为本发明实现CPU业务迁移的装置的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1为本发明实现CPU业务迁移的方法的流程图,设置系统CPU使用用户模式,如图1所示,包括:
步骤100、当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整。
本步骤之前还包括:根据系统业务线程对CPU性能要求的不同,划分控制面核和数据面核;
在系统启动时,设置数据面核为排他绑定核;业务应用线程启动时,设置亲和性绑定至各个数据面核。
需要说明的是,这里,根据系统业务线程对CPU性能要求的不同将对CPU性能要求较低的线程绑定至控制面核;将对CPU性能要求较高的业务应用线程绑定至数据面核;操作系统(OS)的内核线程、OS的内核中断、OS的应用线程及业务中用于用户配置交互的线程等是根据本领域技术人员经验判定的对CPU性能要求较低的线程,当其他线程或被判定为绑定至控制面核对CPU性能要求变化时,其绑定过程可以根据实际情况进行调整。数据面核和控制面核的定义为本领域技术人员的公知常识。设置数据面核为排他绑定核和设置亲和性绑定至各个数据面核是本领域技术人员根据数据面核和控制面核的定义进行的设置,属于本领域技术人员的公知常识。
本步骤中,所有数据面核上CPU负荷比重的均值为:单位时间内各数据面核上的各业务运行的除管理开销以外所占的时间的累加;
负荷阈值包含高负荷阈值和低负荷阈值。
需要说明的是,这里的高负荷阈值和低负荷阈值是本领域技术人员根据实际经验获得的数值;优选的,高负荷阈值是指根据业务负荷计算CPU的负荷达到百分之十,低负荷阈值是指计算CPU的负荷降到百分之二。这里,高负荷阈值和低负荷阈值的确定与系统对业务性能要求的紧迫程度相关,对性能要求很高的场景下,对于一些业务,当需要有多核运行支持,该高负荷阈值和低负荷阈值可以设置低一些,反之可以设置得高一些。系统的紧迫程度由技术人员根据系统要求确定。
业务迁移因数包含高负荷迁移因数和低负荷迁移因数;按照相应的预设步长及预设周期对业务迁移因数进行调整具体包括:
对高负荷迁移因数按照预设周期采用第一预设步长进行业务迁移因数的调整;对低负荷迁移因数按照预设周期采用第二预设步长进行业务迁移因数的调整;其中,第一预设步长大于第二预设步长。
需要说明的是,高负荷迁移因数与低负荷迁移因数是根据本领域技术人员的经验获得的数值;优选的,高负荷迁移因数为300;低负荷迁移因数为-300;当进行业务迁移要求迁移因数的阻尼时间要求变小时,根据要求调整迁移因数即可。预设周期是本领域技术人员根据经验获得的数值;优选的,预设周期可以是1S,当预设周期为1S时,优选的,第一预设步长为300,第二预设步长为1;即高负荷时,以较高的效率提高CPU性能;低负荷时,对业务迁移进行较为缓和的调整,通过对业务迁移的调整设置,首先可以实现满足业务对性能的要求;其次,还可以节省CPU的能耗。
步骤101、当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。
业务迁移因数包含低负荷迁移因数;迁移阈值包含低负荷迁移阈值;本步骤中,按照预先设置的迁移策略将CPU上的业务进行迁移具体包括:
当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用线程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求。
需要说明的是,这里进行业务迁移时,对每次业务迁移,对CPU核按照设置的递减策略进行减少;例如,系统业务通过8个CPU进行处理时,低负荷迁移因数满足低负荷迁移阈值时,减少CPU的工作数量到4个CPU上;再次满足低负荷迁移阈值时,减少到2个;当然,可以按照其他预先设置的递减数值进行,具体的根据业务变化情况及CPU性能进行调整。将递减部分的数据面核上业务按照预先设置的分配策略分配是指按照本领域技术人员根据实际情况设定的分配方法,优选的,可以采用平均分配的方法;当然,还可以采用业务分类后在进行分配的方法进行,具体情况根据实际情况确定。
业务迁移因数包含高负荷迁移因数;迁移阈值包含高负荷迁移阈值;按照预先设置的迁移策略将CPU上的业务进行迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程恢复到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求。
将CPU上的业务进行迁移具体包括:关闭数据面核上所有进行业务迁移的业务应用线程的业务相关定时器,进行业务迁移;这里,进行业务迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程业务恢复到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求;
或者,当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用进程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求;
在将业务迁移到的相应的数据面核上时,开启迁移业务的业务相关定时器,使业务应用线程继续工作。
需要说明的是,这里在进行业务迁移时,调整CPU频率满足低负荷工作要求或高负荷工作要求属于本领域技术人员惯用技术手段,优选的,低负荷工作要求的频率调整为使用CPU支持的最低频率,高负荷工作要求的频率调整为使用最高频率。
图2为本发明实现业务迁移的示意图;如图2所示,在实现过程中通过在控制面核上设置管理线程进行业务迁移,避免由于业务迁移影响管理线程进行业务迁移的工作,管理线程具体实现了各数据面核业务应用线程的记录、数据面核的CPU负荷比重计算、业务迁移因数的调整和是否满足迁移阈值的判断;当然,根据实际情况,可以通过其他的硬件或芯片实现业务迁移过程,管理线程的实现只是其中的一种实现方式。
通过生成的控制指令,发送到相应的数据面核中完成业务迁移过程中业务相关定时器的开启和关闭,业务应用线程的迁入和迁出及数据面核的开启和关闭。
进行业务迁移,是通过添加的管理线程与数据面核进行交互实现,当管理线程关闭业务相关定时器时,管理线程实际上终止了数据面核上业务应用线程的工作,此时,按照预先设置的迁移策略,进行数据面核的迁入和迁出,在完成迁入或迁出之后,打开业务相关定时器重新开启业务的业务应用线程。对业务应用线程的停止、迁移及开启通过在管理线程中生成相应的控制指令实现,具体控制指令的生成数据本领域技术人员的惯用技术手段。
图3为本发明实现业务迁出和迁入的具体流程示意图;如图3所示,假设业务B的业务应用线程为CPU2上的线程2,业务A的业务应用线程为CPU1上的线程1。这里,依然通过管理线程对具体过程进行说明。
假设满足业务迁移的迁移阈值,按照预先设置的迁移策略需要将业务B迁移到CPU1上继续业务,此时,管理线程通过发出请求指令(进入迁移模式),通知CPU1和CPU2需要进行业务迁移,则根据通知指令停止CPU1和CPU2上的业务相关定时器;
管理线程通过发送请求消息(或者控制指令或迁移消息),请求线程2将业务B迁移到CPU1上,通过CPU1上的线程1继续执行业务B,线程1接收到CPU2迁入业务B的请求,完成业务B的迁入;
管理线程根据业务B从CPU2的迁出和到CPU1的迁入的完成,关闭CPU2的数据面核,调整CPU1的数据面核的频率,开启业务相关定时器,继续业务A和业务B的工作。
图4为本发明实现CPU业务迁移的装置的结构框图,设置系统CPU使用用户模式,包括:调整单元和迁移单元;其中,
调整单元,当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
迁移单元,用于当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。
本发明装置还包括面核绑定单元和设置面核单元;其中,
面核绑定单元,用于根据系统业务线程对CPU性能要求不同,划分控制面核和数据面核,并记录业务应用线程在数据面核中的分布;
设置面核单元,用于在系统启动时,设置数据面核为排他绑定核;业务应用线程启动时,设置亲和性绑定至各个数据面核。
业务迁移因数包含低负荷迁移因数,迁移阈值包含低负荷迁移阈值;迁移单元具体用于,
当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用线程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求。
业务迁移因数包含高负荷迁移因数,迁移阈值包含高负荷迁移阈值;迁移单元具体用于,
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程的分布恢复业务到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求。
调整单元具体用于,将单位时间内数据面核上的各业务运行的除管理开销以外所占的时间的累加作为数据面核的负荷比重,当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
负荷阈值包含高负荷阈值和低负荷阈值。
调整单元具体用于,当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照、对高负荷迁移因数按照预设周期采用第一预设步长进行业务迁移因数的调整;对低负荷迁移因数按照预设周期采用第二预设步长进行业务迁移因数的调整;
第一预设步长大于第二预设步长。
迁移单元具体用于,
当调整的业务迁移因数满足迁移阈值时,关闭数据面核上所有进行业务迁移的业务应用线程的业务相关定时器,进行业务迁移;
进行业务迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程业务恢复到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求;当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用进程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求;
在将业务迁移到的相应的数据面核上时,开启迁移业务的业务相关定时器,使业务应用线程继续工作。
虽然本申请所揭露的实施方式如上,但所述的内容仅为便于理解本申请而采用的实施方式,并非用以限定本申请,如本发明实施方式中的具体的实现方法。任何本申请所属领域内的技术人员,在不脱离本申请所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本申请的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (14)

1.一种实现CPU业务迁移的方法,其特征在于,设置系统CPU使用用户模式,包括:
当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。
2.根据权利要求1所述的方法,其特征在于,该方法之前还包括:根据系统业务线程对CPU性能要求不同,划分控制面核和数据面核,并记录业务应用线程在数据面核中的分布;
在系统启动时,设置数据面核为排他绑定核;业务应用线程启动时,设置亲和性绑定至各个数据面核。
3.根据权利要求2所述的方法,其特征在于,所述业务迁移因数包含低负荷迁移因数;所述迁移阈值包含低负荷迁移阈值;所述按照预先设置的迁移策略将CPU上的业务进行迁移具体包括:
当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应按照预先设置的分配策略分配后,将对应的业务应用线程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求。
4.根据权利要求2所述的方法,其特征在于,所述业务迁移因数包含高负荷迁移因数;所述迁移阈值包含高负荷迁移阈值;所述按照预先设置的迁移策略将CPU上的业务进行迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程的分布恢复业务到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求。
5.根据权利要求1或2所述的方法,其特征在于,所述所有数据面核上CPU负荷比重的均值为:单位时间内各数据面核上的各业务运行的除管理开销以外所占的时间的累加;
所述负荷阈值包含高负荷阈值和低负荷阈值。
6.根据权利要求1或2所述的方法,其特征在于,所述业务迁移因数包含高负荷迁移因数和低负荷迁移因数;所述按照相应的预设步长及预设周期对业务迁移因数进行调整具体包括:
对高负荷迁移因数按照预设周期采用第一预设步长进行业务迁移因数的调整;
对低负荷迁移因数按照预设周期采用第二预设步长进行业务迁移因数的调整;
所述第一预设步长大于第二预设步长。
7.根据权利要求1或2所述的方法,其特征在于,所述将CPU上的业务进行迁移具体包括:
关闭数据面核上所有进行业务迁移的业务应用线程的业务相关定时器,进行业务迁移;
所述进行业务迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据所述记录的各数据面核上的业务应用线程业务恢复到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求;当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用进程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求;
在将业务迁移到的相应的数据面核上时,开启迁移业务的业务相关定时器,使业务应用线程继续工作。
8.一种实现CPU业务迁移的装置,其特征在于,设置系统CPU使用用户模式,包括:调整单元和迁移单元;其中,
调整单元,当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
迁移单元,用于当调整的业务迁移因数满足迁移阈值时,按照预先设置的迁移策略将CPU上的业务进行迁移。
9.根据权利要求8所述的装置,其特征在于,该装置还包括面核绑定单元和设置面核单元;其中,
面核绑定单元,用于根据系统业务线程对CPU性能要求不同,划分控制面核和数据面核,并记录业务应用线程在数据面核中的分布;
设置面核单元,用于在系统启动时,设置数据面核为排他绑定核;业务应用线程启动时,设置亲和性绑定至各个数据面核。
10.根据权利要求8所述的装置,其特征在于,所述业务迁移因数包含低负荷迁移因数;所述迁移阈值包含低负荷迁移阈值;所述迁移单元具体用于,
当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用线程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求。
11.根据权利要求8所述的装置,其特征在于,所述业务迁移因数包含高负荷迁移因数;所述迁移阈值包含高负荷迁移阈值;所述迁移单元具体用于,
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据记录的各数据面核上的业务应用线程的分布恢复业务到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求。
12.根据权利要求8或9所述的装置,其特征在于,所述调整单元具体用于,将单位时间内数据面核上的各业务运行的除管理开销以外所占的时间的累加作为数据面核的负荷比重,当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照相应的预设步长及预设周期进行调整;
所述负荷阈值包含高负荷阈值和低负荷阈值。
13.根据权利要求8或9所述的装置,其特征在于,所述调整单元具体用于,
当所有数据面核上CPU负荷比重的均值达到负荷阈值时,对预先设置的业务迁移因数按照、对高负荷迁移因数按照预设周期采用第一预设步长进行业务迁移因数的调整;对低负荷迁移因数按照预设周期采用第二预设步长进行业务迁移因数的调整;
所述第一预设步长大于第二预设步长。
14.根据权利要求8或9所述的装置,其特征在于,所述迁移单元具体用于,
当调整的业务迁移因数满足迁移阈值时,关闭数据面核上所有进行业务迁移的业务应用线程的业务相关定时器,进行业务迁移;
所述进行业务迁移具体包括:
当高负荷迁移因数满足高负荷迁移阈值时,将CPU上业务根据所述记录的各数据面核上的业务应用线程业务恢复到相应的CPU上,并调整迁移到的CPU的频率以满足工作要求;当低负荷迁移因数满足低负荷迁移阈值时,将CPU上的业务按照预先设置的CPU递减策略进行递减后,将递减部分的数据面核上业务按照预先设置的分配策略分配后,将对应的业务应用进程迁移到相应的未关闭的数据面核后,关闭已迁出业务的数据面核,并调整该CPU频率以满足低负荷工作要求;
在将业务迁移到的相应的数据面核上时,开启迁移业务的业务相关定时器,使业务应用线程继续工作。
CN201410691203.XA 2014-11-25 2014-11-25 一种实现cpu业务迁移的方法及装置 Active CN105700951B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410691203.XA CN105700951B (zh) 2014-11-25 2014-11-25 一种实现cpu业务迁移的方法及装置
PCT/CN2015/073414 WO2016082360A1 (zh) 2014-11-25 2015-02-28 一种实现cpu业务迁移的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410691203.XA CN105700951B (zh) 2014-11-25 2014-11-25 一种实现cpu业务迁移的方法及装置

Publications (2)

Publication Number Publication Date
CN105700951A true CN105700951A (zh) 2016-06-22
CN105700951B CN105700951B (zh) 2021-01-26

Family

ID=56073443

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410691203.XA Active CN105700951B (zh) 2014-11-25 2014-11-25 一种实现cpu业务迁移的方法及装置

Country Status (2)

Country Link
CN (1) CN105700951B (zh)
WO (1) WO2016082360A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309036A (zh) * 2018-03-27 2019-10-08 华为技术有限公司 一种cpu占用率检测方法及检测设备
CN110928661A (zh) * 2019-11-22 2020-03-27 北京浪潮数据技术有限公司 一种线程迁移方法、装置、设备及可读存储介质
WO2022179473A1 (zh) * 2021-02-23 2022-09-01 华为技术有限公司 一种核间迁移的频率调整方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013387A (zh) * 2007-02-09 2007-08-08 华中科技大学 基于对象存储设备的负载平衡方法
CN103188277A (zh) * 2011-12-27 2013-07-03 中国电信股份有限公司 负载能耗管理系统、方法和服务器
US20140181834A1 (en) * 2012-12-20 2014-06-26 Research & Business Foundation, Sungkyunkwan University Load balancing method for multicore mobile terminal
CN103957231A (zh) * 2014-03-18 2014-07-30 成都盛思睿信息技术有限公司 一种云计算平台下的虚拟机分布式任务调度方法
US8875151B2 (en) * 2007-07-10 2014-10-28 Samsung Electronics Co., Ltd. Load balancing method and apparatus in symmetric multi-processor system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100562854C (zh) * 2008-03-11 2009-11-25 浙江大学 多核处理器操作系统负载均衡的实现方法
CN103024034B (zh) * 2012-12-11 2016-12-07 华为技术有限公司 一种调度方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013387A (zh) * 2007-02-09 2007-08-08 华中科技大学 基于对象存储设备的负载平衡方法
US8875151B2 (en) * 2007-07-10 2014-10-28 Samsung Electronics Co., Ltd. Load balancing method and apparatus in symmetric multi-processor system
CN103188277A (zh) * 2011-12-27 2013-07-03 中国电信股份有限公司 负载能耗管理系统、方法和服务器
US20140181834A1 (en) * 2012-12-20 2014-06-26 Research & Business Foundation, Sungkyunkwan University Load balancing method for multicore mobile terminal
CN103957231A (zh) * 2014-03-18 2014-07-30 成都盛思睿信息技术有限公司 一种云计算平台下的虚拟机分布式任务调度方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309036A (zh) * 2018-03-27 2019-10-08 华为技术有限公司 一种cpu占用率检测方法及检测设备
CN110928661A (zh) * 2019-11-22 2020-03-27 北京浪潮数据技术有限公司 一种线程迁移方法、装置、设备及可读存储介质
WO2022179473A1 (zh) * 2021-02-23 2022-09-01 华为技术有限公司 一种核间迁移的频率调整方法

Also Published As

Publication number Publication date
CN105700951B (zh) 2021-01-26
WO2016082360A1 (zh) 2016-06-02

Similar Documents

Publication Publication Date Title
Jing et al. State-of-the-art research study for green cloud computing
KR20110049409A (ko) 저전력 멀티코어 시스템에서의 전력 제어 방법 및 장치
US20130151879A1 (en) System and method for controlling central processing unit power with guaranteed transient deadlines
KR101831231B1 (ko) 부하들의 클러스터들에 대한 동적 전력 레일 제어
US20130074085A1 (en) System and method for controlling central processing unit power with guaranteed transient deadlines
CN105700951A (zh) 一种实现cpu业务迁移的方法及装置
KR101659705B1 (ko) 보장된 과도 데드라인들로 중앙 프로세싱 유닛 전력을 제어하기 위한 시스템 및 방법
CN104427124A (zh) 一种控制终端温度的方法、装置及终端
CN103179048A (zh) 云数据中心的主机QoS策略变换方法及系统
WO2019117961A1 (en) Power governance of processing unit
CN102117226A (zh) 一种资源调度系统及资源调度方法
KR20050053758A (ko) 성능이 효과적인 전력 조절을 위한 방법 빛 장치
CN103473142A (zh) 一种云计算操作系统下的虚拟机迁移方法及装置
CN105975049B (zh) 一种任务同步偶发任务低能耗调度方法
JPS5638542A (en) Controlling method for engine
TW201324357A (zh) 虛擬機叢集之綠能管理方法
CN105868004A (zh) 一种基于云计算的业务系统的调度方法及调度装置
CN107463424A (zh) 一种虚拟机迁移方法及装置
CN103970256A (zh) 一种基于内存压缩和cpu动态调频的节能方法及系统
CN104850423A (zh) 识别android系统下应用程序启动阶段的方法
CN105528054B (zh) 集群系统综合调度节能方法及装置
US9323317B2 (en) System and methods for DIMM-targeted power saving for hypervisor systems
CN103078870A (zh) 一种云数据中心操作系统中虚拟机关联-反关联系统及其方法
TW201506603A (zh) 基於伺服器資源負載及位置感知之雲端機房節能方法
EP2915020A1 (en) System and method for controlling central processing unit power with guaranteed transient deadlines

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant