CN105388987A - 动态任务安排方法 - Google Patents

动态任务安排方法 Download PDF

Info

Publication number
CN105388987A
CN105388987A CN201510532636.5A CN201510532636A CN105388987A CN 105388987 A CN105388987 A CN 105388987A CN 201510532636 A CN201510532636 A CN 201510532636A CN 105388987 A CN105388987 A CN 105388987A
Authority
CN
China
Prior art keywords
core
core processor
entry
index
computer system
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
CN201510532636.5A
Other languages
English (en)
Other versions
CN105388987B (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.)
MediaTek Inc
Original Assignee
MediaTek Inc
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 MediaTek Inc filed Critical MediaTek Inc
Publication of CN105388987A publication Critical patent/CN105388987A/zh
Application granted granted Critical
Publication of CN105388987B publication Critical patent/CN105388987B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

本发明提供一种动态管理多核心处理器的电力的方法。多核心处理器产生动态电压频率调节表、从其功率预算及所需效能中择一地选为第一指针、决定计算机系统目前的线程级并行性、依据目前的线程级并行性以及第一指标选出条目,以及依据所选出的条目的第一设定及第二设定设置多个第一核心及多个第二核心。本发明所公开的动态管理计算机系统的多核心处理器的电力的方法,能够更好地平衡电力消耗与系统效能之间的关系。

Description

动态任务安排方法
技术领域
本发明有关于一种电力管理方法,尤其是关于一种动态管理计算机系统的多核心处理器的电力的方法。
背景技术
对于电子装备(如移动电话、个人可携式导航设备、数字相机、个人计算机等)来说,不论其是否为可随身携带,节省电力的消耗一直以来都是一个重要的课题。为了降低电子设备的电力消耗,尤其为了能降低可携式电子设备的电力消耗,先前技术所采用的方法一般着重在牺牲其效能以达到节能的目的。然而,当上述传统的方法应用在电子产品上时,可能会发生许多问题。举例来说,当电子产品操作在节能模式下播放音乐,可能会发生音乐播放不顺畅的情况。
此外,如何有效率地平衡计算装置强大的计算能力及其所产生的热量,对于现代智能型手机的程序设计师来说,是一项重大的挑战。程序设计师期待能在不会造成装置过热或电池过快耗尽的情况下,可以满足使用者对于效能的需要。此外,在行动装置市场中,电能消耗对于消费者来说是一种关键性指标而重大地影响其购买的意愿。然而,相关的先前技术中并未对程序设计师及使用者的需求提出妥善的方案,故需要有一种新的方法来改善电子装置对于电能的控制。
发明内容
为了解决上述技术问题,本发明特提供一种新型电力管理方法。
本发明提供一种动态管理计算机系统的多核心处理器的电力的方法。多核心处理器具有多个第一核心及多个第二核心。上述方法包含:产生至少一动态电压频率调节表,动态电压频率调节表具有多个条目,而每一条目具有用于上述多个第一核心的第一设定以及用于上述多个第二核心的第二设定;从多核心处理器的功率预算及所需效能中择一地选为第一指标;决定计算机系统的目前的线程级并行性依据目前的线程级并行性以及第一指标,从上述多个条目中选出一个条目;以及依据所选出的条目的第一设定设置上述多个第一核心,并依据所选出的条目的第二设定设置上述多个第二核心。
本发明所提供的电力管理方法能够更好平衡电力消耗与系统效能之间的关系。
本发明的这些及其他的目的对于本领域的技术人员来说,在阅读了下述优选实施例的详细说明以后是很容易理解和明白的,所述优选实施例通过多幅图予以揭示。
附图说明
图1为本发明的实施例的具有多核心处理器的计算机系统的功能方块图。
图2绘示了图1的多核心处理器的动态电压频率调节表的数据结构。
图3绘示了图1的多核心处理器的多个动态电压频率调节表的数据结构。
图4是利用本发明的实施例的方法以动态地管理多核心处理器的电力的流程图。
图5是利用本发明另一实施例的方法以动态地管理多核心处理器100的电力的流程图。
具体实施方式
本说明书及权利要求书使用了某些词语代指特定的组件。本领域的技术人员可理解的是,制造商可能使用不同的名称代指同一组件。本文件不通过名字的差别,而通过功能的差别来区分组件。在以下的说明书和权利要求书中,词语“包括”是开放式的,因此其应理解为“包括,但不限于...”。
本案各实施例中所使用的计算机系统,举例来说可为绘图处理系统、娱乐系统、媒体播放系统、电子游戏系统、通讯设备、工作站、桌面计算机、笔记本电脑、移动电话或其他使用了多核心处理器的任一种系统。
多核心处理器可具有异质(heterogeneous)计算架构,其结合了低功耗的核心与高效能但较高功耗的核心。请参考图1,图1为本发明实施例的具有多核心处理器100的计算机系统10的功能方块图。多核心处理器100具有多个第一核心110及多个第二核心120。在本实施例中,多核心处理器100为一种系统芯片(systemonachip,SOC)。多核心处理器100结合了多个第一核心110及多个第二核心120。上述多个第一核心110及多个第二核心120在结构上兼容,故相同的指令可由第一核心110或第二核心120执行。在本实施例中,第一核心110的数目等于四,且第二核心120的数目也等于四。然而,本发明并不以此为限。第一核心110的数目及/或第二核心120的数目可以是其他正整数。
此外,每一第一核心110的效能皆大于任一第二核心120的效能,而每一第二核心120的能源使用效率皆大于任一第一核心110的能源使用效率。换言之,任一激活的(active)第一核心110所消耗的功率大于任一激活的第二核心120所消耗的功率,而任一激活的第一核心110于执行指令的效能大于任一激活的第二核心120于执行相同的指令的效能。因此,高效能的核心(如上述第一核心110)与高能源使用效率的核心(如上述第二核心120)可结合在同一个系统芯片中,以降低能源的消耗(并借此节省电池的电力),并同时可应付高效能的需求。此外,因为上述多个第一核心110及多个第二核心120在结构上兼容,计算机系统10的工作量可依据需求而被分配到每个核心,而满足效能上的需要。举例来说,高密度的作业(如电子游戏)倾向被分配到第一核心110,而低需求性的作业(如寄发电子邮件或播放音乐)则倾向被分配到第二核心120。
在本发明另一实施例中,上述多个第一核心110内嵌于计算机系统10的中央处理单元(CPU)中,而上述多个第二核心120则内嵌于计算机系统10的绘图处理单元(GPU)中。而最近的研究显示,相较于单独地使用中央处理单元或单独地使用绘图处理单元,一起使用中央处理单元与绘图处理单元会有较高的效能。另有数据显示,不同类型的计算处理单元可以更能符合不同类型的作业。举例来说,中央处理单元一般对于控制密集的作业表现良好,而绘图处理单元则对计算密集的作业表现良好。
在本发明中,提供了一种新型动态电压频率调节(DynamicVoltageandFrequencyScaling,DVFS)方案,用以动态地管理多核心处理器100的电力。而将本实施例的DVFS方案应用于多核心处理器100的结果,一个或多个操作频率及一个或多个操作电压可被施加于上述多个第一核心110,且一个或多个操作频率及一个或多个操作电压可被施加于上述多个第二核心120。而当任一第一核心110或任一第二核心120被施予任一操作频率及任一操作电压时,此第一核心110或第二核心120即被激活。换言之,假如任一第一核心110或任一第二核心120并未被施予任一操作频率(即操作频率为零赫兹)及任一操作电压(即操作电压为零伏特),则此第一核心110或第二核心120并非是被激活的。激活的第一核心110的操作频率可不同于激活的第二核心120的操作频率,且激活的第一核心110的操作电压可不同于激活的第二核心120的操作电压,但本发明并不以此为限。换言之,激活的第一核心110的操作频率可等于激活的第二核心120的操作频率,且激活的第一核心110的操作电压可等于激活的第二核心120的操作电压。此外,在本发明另一实施例中,每一个激活的第一核心110被施加了相同的操作频率及相同的操作电压,而每一个激活的第二核心120也被施加了相同的操作频率及相同的操作电压。
当上述的DVFS方案应用在多核心处理器100时,计算机系统10从计算机可读取媒体150读取指令,以执行电力管理程序而动态地调整上述多个第一核心110及多个第二核心120的电力设定。计算机可读取媒体150可以是任何可用的媒体,而可被一般用途或特定用途的计算机所存取。举例来说,计算机可读取媒体150可以是但不限于随机存取内存(RAM)、只读存储器(ROM)、电子可抹拭只读存储器(EEPROM)、光盘片(CD-ROM)或其他光学储存盘片、磁盘或其他磁性储存装置,或是其他媒体而可被用以携带或储存所需的程序代码,而此程序代码以指令或数据结构的型式存在且可被一般用途或特定用途的计算机或处理器所存取。另外,有些链接也可被称为「计算机可读取媒体」。举例来说,倘若软件是从网页、服务器或其他远程信息来源而透过同轴缆线、光纤缆线、双绞线、数字用户线(DSL)或透过其他无线技术(如红外线、广播及微波)而进行传递,则同轴缆线、光纤缆线、双绞线、数字用户线(DSL)或其他无线技术(如红外线、广播及微波)亦被包含在所定义的媒体之中。在此所使用的盘片(disc)及磁盘(disk)包括了光盘(compactdisc)、激光盘片(laserdisc)、光学盘片(opticaldisc)、多样化数字光盘(digitalversatiledisc,DVD)、软盘(floppydisk)及蓝光盘片(blu-raydisc),其中磁盘(disk)通常是透过磁性复制数据,而盘片(disc)则是透过激光而以光学的方式复制数据。另外,上述各型式的媒体的组合,亦被包含在计算机可读取媒体150所涵盖的范畴中。
在本发明另一实施例中,用以执行上述电力管理程序的“指令”可被内建于多核心处理器100、第一核心110或第二核心120之中。当计算机系统100启动时,所内建的指令可被第一核心110及/或第二核心120执行,以执行上述电力管理程序。
根据上述由计算机系统10所执行的电力管理程序,计算机系统10会产生如图2所示的至少一动态电压频率调节(DynamicVoltageandFrequencyScaling,DVFS)表200。动态电压频率调节表200具有多个条目204。每一条目204具有线程级并行性(ThreadLevelParallelism,TLP)202的字段以及第一设定210、第二设定220及指标230的三个分类。如图2所示,第一设定210的分类包含第一数目P、第一操作频率F1及第一操作电压V1的三个字段,第二设定220的分类包含第二数目Q、第二操作频率F2及第二操作电压V2的三个字段,而指标230的分类则包含效能指标A及功率指标B的两个字段。其中第一数目P用以表示第一核心110中被激活的数目,而第二数目Q用以表示第二核心120中被激活的数目。
效能指标A及功率指标B的两个字段为参考字段。多核心处理器100可通过参考效能指标A及功率指针B而从动态电压频率调节表200中选出一个条目204。效能指标A的数值用以表示当第一核心110及第二核心120依据所选出的条目204设置时,多核心处理器100经过量化的效能。效能指标A的数值越大,则表示多核心处理器100具有越高的效能。相似地,功率指标B的数值用以表示当第一核心110及第二核心120依据所选出的条目204设置时,多核心处理器100经过量化的所需功率。功率指标B的数值越大,则表示多核心处理器100所需的功率越大。因此,可根据多核心处理器100的功率预算及/或所需效能,而通过参考效能指标A及功率指针B,从动态电压频率调节表200中选出一个条目204。藉此,多核心处理器100的功率及效能可满足预定情况,而使多核心处理器100的消耗功率不会大于其功率预算,且/或使多核心处理器100的效能不会低于其所需效能。
当产生动态电压频率调节表200之后,多核心处理器100从多核心处理器100的功率预算及所需效能中择一地选作第一指标,且多核心处理器100决定计算机系统10的目前的线程级并行性(ThreadLevelParallelism,TLP)。在本发明的实施例中,目前的TLP等于被激活的第一核心110的数目与被激活的第二核心120的数目的总和。在本发明另一实施例中,目前的TLP是依据计算机系统10的操作系统的执行序列(runqueues)中的执行作业(runningtasks)的数目而被计算出。在本发明一实施例中,目前的TLP是根据上述多个第一核心110及多个第二核心120的工作量总和而被计算出。
当多核心处理器100的功率预算被选为第一指标,且目前的TLP为被激活的第一核心110与被激活的第二核心120的数目P及Q的总和时,多核心处理器100根据目前的TLP及多核心处理器100的功率预算,从动态电压频率调节表200中选出一个条目204。因目前的TLP等于被激活的第二核心120的数目P及Q的总和,故目前的TLP会落在1至8的范围内。如图2所示,条目204的TLP202字段的数值为大于0且小于9的正整数。一旦决定了目前的TLP及第一指标,多核心处理器100根据多核心处理器100目前的TLP及功率预算(即第一指针),从动态电压频率调节表200中选出一个条目204。其中,凡任何条目204其功率指标B的数值倘若大于功率预算,则此条目204将不会被选上。换言之,其功率指标B的数值不大于功率预算的条目204将为候选的条目204,而所选出的条目204将会是从候选的条目204中选出。当多核心处理器100根据目前的TLP及功率预算从候选的条目204中选出一个条目204时,候选的条目204中具有最大效能指标A数值的条目204将会被选出。举例来说,当目前的TLP等于8,且多核心处理器100的功率预算为6000时,其效能指标A的数值为39729且其功率指标B的数值为5861的条目204将会被选出。当条目204被选出后,上述多个第一核心110将依据所选出的条目204的第一设定210进行设置,而上述多个第二核心120将依据所选出的条目204的第二设定220进行设置。
当上述多个第一核心110依据所选出的条目204的第一设定210进行设置,P个第一核心110将被激活,且P个被激活的第一核心110的操作频率将被设定为所选出的条目204的第一操作频率F1,而P个被激活的第一核心110的操作电压将被设定为所选出的条目204的第一电压频率V1。类似地,当上述多个第二核心120依据所选出的条目204的第二设定220进行设置,Q个第二核心120将被激活,且Q个被激活的第二核心120的操作频率将被设定为所选出的条目204的第二操作频率F2,而Q个被激活的第二核心120的操作电压将被设定为所选出的条目204的第二电压频率V2。
在本发明的实施例中,计算机系统10可具有温度传感器,用以感测多核心处理器100的温度,且多核心处理器100可根据所感测的温度决定功率预算。当上述多个第一核心110及多个第二核心120被设置后,多核心处理器100所消耗的功率将会保持在小于或等于功率预算的情况,如此多核心处理器100即不会过热。
在本发明的实施例中,上述多个条目204是依据穷举法产生,而此穷举法用以列出动态电压频率调节表200所有字段的所有可能的组合。举例来说,如图2所示,目前的TLP落在介于1至8的范围,第一操作频率F1可等于Freq_b1或Freq_b2,第一操作电压V1可等于Volt_b1或Volt_b2,第二操作频率F2可等于Freq_L1或Freq_L2,而第二操作电压V2可等于Volt_L1。因此,动态电压频率调节表200可包含64个(即8×2×2×2×1)条目204。
在本发明的实施例中,在选出用以设置第一核心110及第二核心120的条目204之前,多核心处理器100可先从动态电压频率调节表200中移除部分的条目204。当部分的条目204从动态电压频率调节表200中移除后,多核心处理器100再从动态电压频率调节表200所剩余的条目204中选出所要选择的条目204,以设置第一核心110及第二核心120。因为部分的条目204已自动态电压频率调节表200移除,故选出所要选择的条目204的效率将可提高。
动态电压频率调节表200可根据TLP的数值,而被分割成数个较小的动态电压频率调节表300_1至300_8,如图3所示。在此情况下,因目前的TLP落在1至8的范围内,动态电压频率调节表200会被分割成八个动态电压频率调节表300_1至300_8。因此,动态电压频率调节表300_1至300_8中的每个动态电压频率调节表所具有的条目204的数目将会小于动态电压频率调节表200的条目204的数目。动态电压频率调节表300_1至300_8中的每个动态电压频率调节表各对应至不同数值的TLP。举例来说,动态电压频率调节表300_1对应至数值为1的TLP,动态电压频率调节表300_7对应至数值为7的TLP,动态电压频率调节表300_8对应至数值为8的TLP。当多核心处理器100要选出所要选出的条目204时,多核心处理器100根据该目前的TLP从动态电压频率调节表300_1至300_8中选出对应的动态电压频率调节表,并再根据第一指标(即多核心处理器100的功率预算或所需效能),从所选出的动态电压频率调节表中选出所要选出的条目204。
在本发明的实施例中,动态电压频率调节表300_1至300_8中的每一个动态电压频率调节表的条目204是依据穷举法产生,而此穷举法用以列出此动态电压频率调节表所有字段的所有可能的组合。以动态电压频率调节表300_8为例,第一操作频率F1可等于Freq_b1或Freq_b2,第一操作电压V1可等于Volt_b1或Volt_b2,第二操作频率F2可等于Freq_L1或Freq_L2,而第二操作电压V2可等于Volt_L1。因此,动态电压频率调节表300_8可包含8个(即2×2×2×1)条目204。
当多核心处理器100的所需效能被选为第一指标,且目前的TLP为被激活的第一核心110与被激活的第二核心120的数目P及Q的总和时,多核心处理器100根据目前的TLP及多核心处理器100的所需效能,从动态电压频率调节表200中选出一个条目204。一旦决定了目前的TLP及第一指标,多核心处理器100根据多核心处理器100目前的TLP及所需效能(即第一指针),从动态电压频率调节表200中选出一个条目204。其中,凡任何条目204其效能指标A的数值倘若小于所需效能,则此条目204将不会被选上。换言之,其效能指标A的数值不小于所需效能的条目204将为候选的条目204,而所选出的条目204将会是从候选的条目204中选出。当多核心处理器100根据目前的TLP及所需效能从候选的条目204中选出一个条目204时,候选的条目204中具有最低功率指标B数值的条目204将会被选出。举例来说,当目前的TLP等于8,且多核心处理器100的所需效能为40000时,其效能指标A的数值为40273且其功率指标B的数值为6192的条目204将会被选出。当条目204被选出后,上述多个第一核心110将依据所选出的条目204的第一设定210进行设置,而上述多个第二核心120将依据所选出的条目204的第二设定220进行设置。因此,当上述多个第一核心110及多个第二核心120依据所选出的条目204设置后,多核心处理器10的效能将会保持在大于或等于所需效能的情况。
请参考图4,图4是利用本发明的实施例的方法以动态地管理多核心处理器100的电力的流程图。上述方法包括下述步骤:
步骤S410:产生至少一个动态电压频率调节表(如单一个动态电压频率调节表200或多个动态电压频率调节表300_1至300_8);
步骤S420:从多核心处理器100的功率预算及所需效能中择一地选为第一指标;
步骤S430:决定计算机系统10目前的TLP;
步骤S440:依据目前的TLP及第一指标,选出一个条目204;
步骤S450:依据所选出的条目204的第一设定210设置第一核心110,并依据所选出的条目204的第二设定220设置第二核心120;以及
步骤S460:等待预定时间周期,之后再回到步骤S430。
因计算机系统10会周期性地执行步骤S430至S460,故所述的多个第一核心110及多个第二核心120会周期性地被设置以符合各时间点的TLP。因此,第一核心110及第二核心120的操作电压及操作频率会动态地依据目前的TLP而调整。
在本发明另一实施例中,是同时依据多核心处理器100的功率预算及所需效能,选出所要的条目204。换言之,倘若第一指标为多核心处理器100的所需效能,则多核心处理器100的功率预算可作为用以选出条目204的另一指标。倘若第一指标为多核心处理器100的功率预算,则多核心处理器100的所需效能可作为用以选出条目204的另一指标。因此,所选出的条目204是依据目前的TLP、多核心处理器100的功率预算及所需效能而被选出的。请参考图5,图5是利用本发明另一实施例的方法以动态地管理多核心处理器的电力的流程图。在本实施例中,上述的步骤S420及S440分别被步骤S520及S540所取代,而上述方法包含了下述步骤:
步骤S410:产生至少一个动态电压频率调节表(如单一个动态电压频率调节表200或多个动态电压频率调节表300_1至300_8);
步骤S520:将多核心处理器100的功率预算及所需效能选为第一指标及第二指标;
步骤S430:决定计算机系统10目前的TLP;
步骤S540:依据目前的TLP、第一指标及第二指标,选择一条目204;
步骤S450:依据所选出的条目204的第一设定210设置第一核心110,并依据所选出的条目204的第二设定220设置第二核心120;以及
步骤S460:等待预定时间周期,之后再回到步骤S430。
在本发明另一实施例中,多核心处理器100功率预算及所需效能选为第一指标及第二指标,且目前的TLP为被激活的第一核心110与被激活的第二核心120的数目P及Q的总和。多核心处理器100依据目前的TLP以及多核心处理器100的功率预算与所需效能,从动态电压频率调节表200中选出一个条目204。其中,凡任何条目204其效能指标A的数值倘若小于所需效能,或是其功率指标B的数值倘若大于功率预算,则此条目204将不会被选上。
换言之,其效能指标A的数值不小于所需效能且其功率指标B的数值不大于功率预算的条目204将为候选的条目204,而所选出的条目204将会是从候选的条目204中选出。当多核心处理器100根据目前的TLP、功率预算及所需效能从候选的条目204中选出一个条目204时,候选的条目204中具有最大效能指标A数值或具有最低功率指标B数值的条目204将会被选出。举例来说,当目前的TLP等于8,多核心处理器100的所需效能为41000,且多核心处理器100的功率预算为6350时,其效能指标A的数值为41584且其功率指标B的数值为6339的条目204将会被选出。当条目204被选出后,上述多个第一核心110将依据所选出的条目204的第一设定210进行设置,而上述多个第二核心120将依据所选出的条目204的第二设定220进行设置。因此,当上述多个第一核心110及多个第二核心120依据所选出的条目204设置后,多核心处理器100的效能将会保持在大于或等于所需效能的情况,且多核心处理器100所消耗的功率将会小于或等于功率预算。
因条目204是同时依据多核心处理器100的功率预算及所需效能而被选出,故当第一核心110及第二核心120被设置时,多核心处理器100的所消耗的功率将会小于或等于功率预算,且多核心处理器100的效能将会大于或等于所需效能。如此一来,多核心处理器100将不会过热,且多核心处理器100的效能不会因此而被牺牲。
本领域的技术人员将注意到,在获得本发明的指导之后,可对所述装置和方法进行大量的修改和变换。相应地,上述公开内容应该理解为,仅通过所附加的权利要求的界限来限定。

Claims (14)

1.一种动态管理计算机系统的多核心处理器的电力的方法,该多核心处理器具有多个第一核心及多个第二核心,该方法包含:
产生至少一动态电压频率调节表,该动态电压频率调节表具有多个条目,而每一条目具有用于该多个第一核心的第一设定以及用于该多个第二核心的第二设定;
从该多核心处理器的功率预算及所需效能中择一地选作为第一指标;
决定该计算机系统目前的线程级并行性;
依据该目前的线程级并行性以及该第一指标,从该多个条目中选出一条目;以及
依据所选出的该条目的该第一设定设置该多个第一核心,并依据所选出的该条目的该第二设定设置该多个第二核心。
2.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该第一设定包含M个字段,而该第二设定包含N个字段,M和N为正整数,该多个条目是依据穷举法产生,而该穷举法用以列出上述M个字段及上述N个字段的所有可能的组合。
3.如权利要求2所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,另包含:
自该至少一动态电压频率调节表移除该多个条目中的部分条目;
其中所选出的该条目是从该至少一动态电压频率调节表所剩余的条目中选出。
4.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该至少一动态电压频率调节表包含多个动态电压频率调节表,而该方法另包含:
根据该目前的线程级并行性,从该多个动态电压频率调节表中选出一动态电压频率调节表;
其中所选出的该条目是根据该第一指标从所选出的该动态电压频率调节表中选出。
5.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该第一指标为该多核心处理器的该功率预算,而该方法另包含:
感测该多核心处理器的温度;
其中该功率预算是根据所感测的温度而决定。
6.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该第一指标为该多核心处理器的该功率预算,而当根据所选出的该条目的该第一设定及该第二设定设置该多个第一核心及该多个第二核心时,该多核心处理器的功率消耗维持小于或等于该功率预算。
7.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该第一指标为该多核心处理器的该所需效能,而当根据所选出的该条目的该第一设定及该第二设定设置该多个第一核心及该多个第二核心时,该多核心处理器的效能维持大于或等于该所需效能。
8.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,另包含:
决定第二指标,其中倘若该第一指标为该多核心处理器的该所需效能,则该第二指标为该多核心处理器的该功率预算,而倘若该第一指标为该多核心处理器的该功率预算,则该第二指标为该多核心处理器的该所需效能;
其中所选出的该条目是根据该目前的线程级并行性、该第一指标及该第二指标选出。
9.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该目前的线程级并行性是根据该多个第一核心及该多个第二核心的工作量总和而被计算出。
10.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该目前的线程级并行性是依据该计算机系统的操作系统的执行序列中的执行作业的数目而被计算出。
11.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,决定该目前的线程级并行性、从该多个条目中选出一个条目以及设置该多个第一核心与该多个第二核心的步骤会周期性地执行。
12.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,所选出的该条目的该第一设定包含第一数目、第一操作频率及第一电压,而所选出的该条目的该第二设定包含第二数目、第二操作频率及第二电压,该第一数目与该第二数目为大于或等于0的整数,且该第一数目与该第二数目的总和为正整数;
其中当该多个第一核心根据所选出的该条目的该第一设定设置时,该多个第一核心的P个第一核心被激活,该P个第一核心的操作频率设置为该第一操作频率,而该P个第一核心的一操作电压设置为该第一操作电压,P等于该第一数目;
其中当该多个第二核心根据所选出的该条目的该第二设定设置时,该多个第二核心的Q个第二核心被激活,该Q个第二核心的操作频率设置为该第二操作频率,而该Q个第二核心的操作电压设置为该第二操作电压,Q等于该第二数目。
13.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该多核心处理器具有异质计算架构,该多个第一核心中的激活的第一核心所消耗的功率大于该多个第二核心中的激活的第二核心所消耗的功率,而该激活的第一核心执行指令的效能大于该激活的第二核心执行指令的效能。
14.如权利要求1所述的动态管理计算机系统的多核心处理器的电力的方法,其特征在于,该多个第一核心内嵌于该计算机系统的中央处理单元中,而该多个第二核心内嵌于该计算机系统的绘图处理单元中。
CN201510532636.5A 2014-08-27 2015-08-27 动态任务安排方法 Active CN105388987B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201462042313P 2014-08-27 2014-08-27
US62/042,313 2014-08-27
US14/811,851 US9665161B2 (en) 2014-08-27 2015-07-29 Method and computer-readable medium for dynamically managing power of multi-core processor
US14/811,851 2015-07-29

Publications (2)

Publication Number Publication Date
CN105388987A true CN105388987A (zh) 2016-03-09
CN105388987B CN105388987B (zh) 2018-06-19

Family

ID=54010948

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510532636.5A Active CN105388987B (zh) 2014-08-27 2015-08-27 动态任务安排方法

Country Status (3)

Country Link
US (1) US9665161B2 (zh)
EP (1) EP2990909B1 (zh)
CN (1) CN105388987B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170525A (zh) * 2016-12-07 2018-06-15 晨星半导体股份有限公司 动态调整多核心处理器的任务负载配置的装置以及方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170212575A1 (en) * 2016-01-21 2017-07-27 Mediatek Inc. Power budget allocation method and apparatus for generating power management output according to system setting of multi-core processor system and target power budget
US10064141B2 (en) * 2016-12-09 2018-08-28 Qualcomm Incorporated Core frequency/count decision-based thermal mitigation optimization for a multi-core integrated circuit
US11054884B2 (en) 2016-12-12 2021-07-06 Intel Corporation Using network interface controller (NIC) queue depth for power state management
KR102661491B1 (ko) 2016-12-26 2024-04-29 삼성전자주식회사 동적 전압 주파수 스케일링을 사용하는 시스템 온 칩 및 그것의 동작 방법
KR20180098904A (ko) 2017-02-27 2018-09-05 삼성전자주식회사 컴퓨팅 장치 및 컴퓨팅 장치에 포함된 복수의 코어들에 전력을 할당하는 방법
US10884811B2 (en) 2017-06-04 2021-01-05 Apple Inc. Scheduler for AMP architecture with closed loop performance controller using static and dynamic thread grouping
US10983581B2 (en) * 2017-12-31 2021-04-20 Intel Corporation Resource load balancing based on usage and power limits
US10921876B2 (en) 2018-04-26 2021-02-16 Mediatek Inc. Runtime power table index adjustment for performance and power management
KR102552954B1 (ko) * 2018-11-07 2023-07-06 삼성전자주식회사 컴퓨팅 시스템 및 컴퓨팅 시스템의 동작 방법
US11054882B2 (en) * 2019-02-21 2021-07-06 Apple Inc. Externally-triggered throttling
US11436060B2 (en) * 2019-08-27 2022-09-06 Advanced Micro Devices, Inc. Proactive management of inter-GPU network links
US11698812B2 (en) * 2019-08-29 2023-07-11 Intel Corporation System, apparatus and method for providing hardware state feedback to an operating system in a heterogeneous processor
US11366506B2 (en) * 2019-11-22 2022-06-21 Intel Corporation System, apparatus and method for globally aware reactive local power control in a processor
KR20230036589A (ko) * 2021-09-06 2023-03-15 삼성전자주식회사 시스템-온-칩 및 그의 동작 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060149975A1 (en) * 2004-12-30 2006-07-06 Intel Corporation Operating point management in multi-core architectures
US20120089852A1 (en) * 2010-10-08 2012-04-12 Kalyan Muthukumar Energy optimization techniques in a computing system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050046400A1 (en) 2003-05-21 2005-03-03 Efraim Rotem Controlling operation of a voltage supply according to the activity of a multi-core integrated circuit component or of multiple IC components
US7721127B2 (en) * 2006-03-28 2010-05-18 Mips Technologies, Inc. Multithreaded dynamic voltage-frequency scaling microprocessor
US20090049314A1 (en) * 2007-08-13 2009-02-19 Ali Taha Method and System for Dynamic Voltage and Frequency Scaling (DVFS)
US8949635B2 (en) 2007-09-28 2015-02-03 Intel Corporation Integrated circuit performance improvement across a range of operating conditions and physical constraints
US8284205B2 (en) 2007-10-24 2012-10-09 Apple Inc. Methods and apparatuses for load balancing between multiple processing units
US8510740B2 (en) * 2010-09-16 2013-08-13 Qualcomm Incorporated System and method of performing dynamic voltage and frequency scaling operations on a mobile device
EP2523120A1 (en) * 2011-05-12 2012-11-14 Imec Microcomputer architecture for low power efficient baseband processing
KR101930752B1 (ko) * 2012-02-24 2018-12-19 삼성전자 주식회사 멀티 코어를 포함하는 전자 기기의 전력 제어 방법 및 장치
KR101991682B1 (ko) * 2012-08-29 2019-06-21 삼성전자 주식회사 Dvfs 제어 방법 및 이를 이용한 시스템-온 칩
US9423858B2 (en) * 2012-09-27 2016-08-23 Intel Corporation Sharing power between domains in a processor package using encoded power consumption information from a second domain to calculate an available power budget for a first domain
US9335803B2 (en) 2013-02-15 2016-05-10 Intel Corporation Calculating a dynamically changeable maximum operating voltage value for a processor based on a different polynomial equation using a set of coefficient values and a number of current active cores

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060149975A1 (en) * 2004-12-30 2006-07-06 Intel Corporation Operating point management in multi-core architectures
CN101111814A (zh) * 2004-12-30 2008-01-23 英特尔公司 多核架构中的工作点管理
US20120089852A1 (en) * 2010-10-08 2012-04-12 Kalyan Muthukumar Energy optimization techniques in a computing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170525A (zh) * 2016-12-07 2018-06-15 晨星半导体股份有限公司 动态调整多核心处理器的任务负载配置的装置以及方法

Also Published As

Publication number Publication date
US9665161B2 (en) 2017-05-30
CN105388987B (zh) 2018-06-19
US20160062447A1 (en) 2016-03-03
EP2990909B1 (en) 2017-09-27
EP2990909A1 (en) 2016-03-02

Similar Documents

Publication Publication Date Title
CN105388987A (zh) 动态任务安排方法
US7992021B2 (en) Power-managed server and method for managing power consumption
US7421599B2 (en) Power management server and method for managing power consumption
US10146289B2 (en) Power system utilizing processor core performance state control
Ibrahim et al. Governing energy consumption in Hadoop through CPU frequency scaling: An analysis
US9772967B2 (en) I/O co-processor coupled hybrid computing device
US9311152B2 (en) Methods and apparatuses for load balancing between multiple processing units
JP6005895B1 (ja) ワット当たりの最適パフォーマンスのためのインテリジェントマルチコア制御
KR20060131543A (ko) 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법
CN106168846A (zh) 计算系统与在计算系统内控制多核心处理器操作的方法
TWI336448B (en) Method and apparatus for providing for detecting processor state transitions
US8996902B2 (en) Modal workload scheduling in a heterogeneous multi-processor system on a chip
US9552046B2 (en) Performance management methods for electronic devices with multiple central processing units
US8006108B2 (en) Dynamic selection of group and device power limits
CN108780349B (zh) 用于在具有异构集群架构的片上系统中进行智能热管理的系统和方法
US10234919B2 (en) Accessory-based power distribution
CN102521154A (zh) 用于创建低功率区域的动态存储器分配和重新定位
KR20160085892A (ko) 칩상의 시스템에서의 동작 주파수 조정 및 작업부하 스케쥴링을 위한 시스템 및 방법
CN111475012A (zh) 至硬件加速器的动态功率路由
CN101071329A (zh) 多核处理器的电源控制装置及其方法
TW201737785A (zh) 機架系統、控制在機架系統內風扇的方法以及非暫態電腦可讀取媒體
US20170160782A1 (en) Share power source mechanism in a multicore processor system
KR20070013631A (ko) 멀티-코어 프로세서의 전원 제어 장치 및 방법
JP2017021811A (ja) 電力効率の優れたプロセッサアーキテクチャ

Legal Events

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