CN106168846A - 计算***与在计算***内控制多核心处理器操作的方法 - Google Patents
计算***与在计算***内控制多核心处理器操作的方法 Download PDFInfo
- Publication number
- CN106168846A CN106168846A CN201610329661.8A CN201610329661A CN106168846A CN 106168846 A CN106168846 A CN 106168846A CN 201610329661 A CN201610329661 A CN 201610329661A CN 106168846 A CN106168846 A CN 106168846A
- Authority
- CN
- China
- Prior art keywords
- core
- entry
- setting
- core processor
- calculating 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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显示根据本发明实施例的具有多核心处理器100的计算机***10的功能框图。
图2显示本发明实施例的DVFS表。
图3显示本发明另一实施例的DVFS表。
图4A(由图4A-1及图4A-2组成)及图4B(由图4B-1及图4B-2组成)显示本发明实施例的DVFS表及操作方法。
图5显示根据本申请实施例的多核心处理器的控制方法的流程图。
具体实施方式
本说明书及权利要求书使用了某些词语代指特定的组件。本领域的技术人员可理解的是,制造商可能使用不同的名称代指同一组件。本文件不通过名字的差别,而通过功能的差别来区分组件。在以下的说明书和权利要求书中,词语“包括”是开放式的,因此其应理解为“包括,但不限于...”。
本发明的实施例可用于任何计算***,例如图像操作***,娱乐***,媒体***,游戏***,通信设备,工作站,台式计算机,笔记本电脑,移动电话,或其他具有多核心处理器的***。
多核心处理器可具有异构计算架构,其可以将较慢的低功耗的处理器核心与更强的高功耗的处理器核心耦接起来。请参考图1,图1显示根据本发明实施例的具有多核心处理器100的计算机***10的功能框图。多核心处理器100包含多个第一核心110(110-1到110-4)以及多个第二核心120(120-1到120-4)。本实施例中,多核心处理器100是一个芯片上***(SOC)。多核心处理器100将多个第一核心110与多个第二核心120组合。第一核心110与第二核心120在架构上是兼容的,使得同样指令可以由第一核心110或第二核心120执行。本实施例中,第一核心110的数量等于4,第二核心120的数量也等于4。可是,本发明并不限于此。第一核心110与第二核心120的数量可以是其他正整数。
而且,每个第一核心110的性能比每个第二核心120的性能高,而每个第二核心120的能效比每个第一核心110的能效高。换句话说,每个运行的第一核心110的功耗比每个运行的第二核心120的功耗高,在执行同样指令时,每个运行的第一核心110在执行指令方面的性能比每个第二核心120的性能好。如此,高性能核心(即第一核心110)与高能效(energy efficient)核心(即第二核心120)在同个SOC上组合,来降低功耗并节省电力,同时还能够发挥最佳性能。因为第一核心110与第二核心120是架构兼容的,计算机***10的任务可以按需分配到每个核心,来适应性能需求。高密度的任务,例如游戏需要被分配到第一核心110而例如电子邮件或音频播放等要求不那么高的任务则会被分配给第二核心120。
本发明另一个实施例中,第一核心110是嵌入在计算***10的中央处理器(CPU)中,而第二核心120则嵌入在计算***10的图像处理器(GPU)中。最近研究表明将CPU与GPU一起使用是比单独使用CPU或GPU的更有效的计算方法。数据现实不同类型的计算操作单元更适合不同类型的任务。举例来说,CPU一般在控制密集型(control-intensive)任务中表现更好,而GPU在计算密集型任务中表现更好。
本申请提供一种新的动态电压与频率调节(Dynamic Voltage andFrequency Scaling,DVFS)机制来管理多核心处理器100,其与其他现有技术的管理方法不同。多核心处理器100使用了DVFS的实施例的结果是,第一核心110可使用一个或多个操作频率及一个或多个操作电压,第二核心120也可使用一个或多个操作频率及一个或多个操作电压。一旦一个操作频率及一个操作电压应用于任何一个第一核心110或任何一个第二核心120,第一核心110或第二核心120就开始运行。换句话说,如果任何第一核心110或任何第二核心120没有操作频率(即操作频率等于0Hz)或任何操作电压(即操作电压等于0伏),第一核心110或第二核心120没有运行。运行的第一核心110的操作频率可与运行的第二核心120的操作频率不同,运行的第一核心110的操作电压可与运行的第二核心120的操作电压不同。可是,本申请不限于此。也就是说,运行的第一核心110的操作频率可以与运行的第二核心120的操作频率相同,运行的第一核心110的操作电压可以与运行的第二核心120的操作电压相同。而且,在本申请的一个实施例中,每个运行的第一核心110使用同样操作频率与同样操作电压,且每个运行的第二核心120也使用同样操作频率及同样操作电压.根据一个实施例,DVFS机制可由核心控制器130执行,后文将详细介绍。
根据前文描述的由计算***10执行的功率管理流程(powermanagement process),如图2所示,至少一个DVFS表200可由计算***10产生。DVFS表200包含多个条目(entry),从204-1到204-n,其中n是正整数。每个204-1到204-n中的条目包含三个部分:第一设定(setting)210,第二设定220以及参考指标(reference indexes)230。如图2所示,第一设定210包含栏位(fields)有第一数量P,第一操作频率F1以及第一操作电压V1,第二设定220包含栏位有第二数量Q,第二操作频率F2以及第二操作电压V2,以及参考指标230的类别(category)包含栏位有性能指标(performance index)A与功率指标(powerindex)B。第一数量P表示运行的第一核心110的数量,第二数量Q表示运行的第二核心120的数量。
性能指标A与功率指标B的栏位是参考栏位。多核心处理器100可通过参考性能指标A与功率指标B的栏位的数值,从DVFS表200中选择一个条目。性能指标A的数值表示当第一核心110与第二核心120根据204-1到204-n中的一个选择的条目设置时,多核心处理器100的性能的一个量化值。举例来说,当条目204-3被选择来设置多核心处理器100,在此选择下多核心处理器100的性能指标A是40273。性能指标A的数值越大,多核心处理器100展现的性能越高。同样的,功率指标B的数值表示当第一核心110与第二核心120根据204-1到204-n中的一个选择的条目设置时,多核心处理器100的所需功率的一个量化值。功率指标B的数值越大,多核心处理器100所需的功率越大。因此,可通过参考性能指标A与功率指标B的栏位的数值,根据多核心处理器100所需的功率限制以及/或性能,从DVFS表200中选择条目204-1到204-n中之一。如此,多核心处理器100的功率与性能可符合一个既定的条件,使得多核心处理器100消耗的功率不超过功率限制且/或多核心处理器100的性能不比所需的性能差。
举例来说,假设条目204-9被选择来设置多核心处理器100。那么,第一核心110就根据选择的条目204-9的第一设定210,来设置3个第一核心110为运行的,而且3个运行的第一核心110的操作频率为Freq_b1,且3个运行的第一核心110的操作电压为Volt_b1。同样的,第二核心120也根据选择的条目204-9的第二设定220,来设置4个第二核心120为运行的,而且4个运行的第二核心120的操作频率为Freq_L2,且4个运行的第二核心120的操作电压为Volt_L1。
请参考图3,其显示可用来设置多核心处理器100的其他类型的DVFS表。从300_1到300_8的每个DVFS表对应线程级平行度(thread levelparallelism,TLP)一个唯一数值。举例来说,DVFS表300_1对应于数值为1的TLP,DVFS表300_7对应数值为7的TLP,DVFS表300_8对应数值为8的TLP。根据本申请的一实施例,为多核心处理器100在从DVFS表300_1到300_8的所有条目中选择一个目标条目(target entry),多核心处理器100首先根据当前TLP从DVFS表300_1到300_8选择一个,然后根据多核心处理器100的功率限制及/或所需性能从选择的DVFS表中选择目标条目。更具体地,如图4A及图4B所示的DVFS表分别清楚显示了DVFS表300_4(TLP=4)与300_8(TLP=8)的条目。请注意,上面提到的DVFS表可储存于计算***10的存储单元内(图未示)。
根据本申请的一实施例,多核心处理器100决定计算***10中的当前TLP。在本申请一实施例中,当前TLP是运行的第一核心110的数量与运行的第二核心120的数量之和。在本申请的另一实施例中,当前TLP根据信息***10的操作***(OS)的运行序列(run queues)中正在运行的任务的数量所确定。在本申请一实施例中,当前TLP根据第一核心110与第二核心120的工作量(workload)总和来计算。
根据本申请一实施例,核心控制器130借助类似如上述DVFS表,通过监控多核心处理器100的利用(utilization,UZ),提供目标设定(target-setting,TS),来控制多核心处理器100的开启/关闭以及操作点(operating point,例如操作电压与操作频率)。核心控制器130可包含软件指令组,其可由多核心处理器100(e.g.110-1or 120-1)中的一个执行,来监控并控制从110-1到110-4的第一核心以及从120-1到120-4的第二核心的操作。核心控制器130可通过专用硬件电路来实施,或与固件结合来实施,这些都为本领域内技术人员所了解。
利用(或者核心利用,core utilization)一般在平台时段定时器中断的时候如果核心被暂停,通过侦测来得到。对于一个像多核心处理器100的多核心来讲,利用(utilization,UZ)可以是所有上电的核心的平均利用(average utilization)。在一实施例中,多核心处理器100的UZ通过核心控制器130得到。
图4A显示实施例的核心控制器130如何跟踪并微调多核心100的性能的实施例。为了解释目的,在DVFS表300-4中,第一核心110-1到110-4表示为“Cluster Little”而第二核心120-1到120-4表示为“ClusterLLittle”。而且,OPP_L表示第一核心110(图3中表示为F1与V1)的操作点,而OPP_LL表示第二核心120(图3中表示为F2与V2)的操作点。此处,假设多核心处理器100当前采用了条目0中的设定,其中核心110-1到110-4都是运行(或者是开启的)在操作点OPP1以及核心120-1到120-4都是运行(或者是开启的)。核心控制器130监控UZ并找出,在条目0设定下,多核心100的UZ是40%。接着,核心控制器130利用下面公式来计算目标性能指标F1:目标性能指标=当前性能指标*(UZ/目标利用),目标利用为target utilization。其中当前性能指标是在当前设定(3900)下的性能指标,目标利用可以是一个预定数值,代表多核心100的期望的利用。在本实施例中,我们假定目标利用是90%而目标性能指标是大约1733(3900*40%/90%)。然后,核心控制器130参考DVFS表300-4,并比较表中条目的性能指标,来得到目标设定(target-setting,TS)。举例来说,核心控制器130可选择一个性能指标大于且靠近目标性能的条目。在本例子中,DVFS表300-4的第21条目会被选择。核心控制器130可接着用第21条目设置多核心处理器100,使得核心110-1到110-4被从开启到关闭,而核心120-1到120-4被从关闭到开启,来于操作点OPP2工作。需要注意的是,一旦获取了设置多核心100的目标设定TS,核心控制器130可把目标设定TS转发给另一个模块(例如功率管理电路),以使用该目标设定TS设定多核心处理器100。当多核心处理器100用第21条目设置后,多核心处理器100的UZ可达到目标利用(90%),这是通过在操作点OPP2开启“Cluster LLittle”中的所有核心,而关闭“Cluster Little”中的所有核心。请注意,在一些例子中,可能有计算***10的功率限制,核心控制器130需要选择一个不仅性能指标大于目标性能且功率指标小于计算***10的功率限制的条目。
图4B显示核心控制器130跟踪并微调多核心100性能的实施例。这里,假设多核心处理器100当前采用条目0中的设定,其中核心110-1到110-4都是在操作点OPP1运行的(或开启的),而核心120-1到120-4也都是操作点在OPP1运行的。核心控制器130监控UZ且找出,在条目0的设定下,多核心100的UZ是50%。然后,核心控制器130使用上面公式F1计算目标性能指标。在图4B中,我们假定目标利用是90%,因此目标性能指标会是大约3279(5902*50%/90%)。然后,核心控制器130参考DVFS表300-8并比较表中的条目的性能指标,来得到目标设定TS。举例来说,核心控制器130可选择具有性能指标大于目标性能且具有最小功率指标的条目。在本例子中,DVFS表300-8的第8条目会被选择。核心控制器130然后使用第8条目设置多核心处理器100,使得核心110-1到110-4以及核心120-1到120-4全部保持开启但是切换到操作点OPP4工作。
请注意,从公式F1得到的目标性能指标可进一步用一个计算***10的运行序列长度(run queue length)来调整。运行序列长度表示操作***的运行序列中有多少任务在排队。运行序列长度增加时,操作***分配给多核心处理器100来处理的任务/工作的数量就增加。为了保持平滑的性能与良好的用户体验,需要提供足够的计算资源。举例来说,目标性能指标可通过下面公式来计算F2:目标性能指标=当前性能指标*(UZ/目标利用)+运行序列长度*W,其中W是一个核心控制器130可改变的调整因子(scaling factor)。
基于上面的叙述,下面根据本申请实施例有一些陈述。核心控制器130用来执行下列步骤。第一,其监控多核心处理器100的UZ。第二,其根据多核心处理器100的利用、目标利用以及第一性能指标计算一目标性能指标,其中第一性能指标与对应多核心处理器100的当前设定的DVFS表的第一条目相关。第三,其根据目标性能指标与第二性能指标选择DVFS表的第二条目,其中DVFS表对应目标设定,且第二性能指标与第二条目相关。目标设定更用来设置多核心处理器100。并且根据本申请的一实施例,第二性能指标大于目标性能指标。根据本申请的另一实施例,核心控制器130更根据计算***10的运行序列长度来计算目标性能指标。
在一个实施例中,核心控制器130更被设置来产生DVFS表,其中第一条目记录当前设定与第一性能指标,而第二条目记录目标设定与第二性能指标。第一条目记录第一功率指标,第二条目更记录第二功率指标,第二功率指标小于计算***10的功率限制。核心控制器130基于计算***10的TLP来产生DVFS表,使得DVFS表可被划分为多个子表,其中每个表对应不同的TLP数值,并包含多个条目。而且,当TLP改变为第一TLP数值,核心控制器130从DVFS表中的第一子表中选择对应第一TLP数值的第二条目。
根据本申请实施例,核心控制器130也可用来确定计算***10的TLP是否要改变,或者多核心处理器100的UZ是否处在目标范围之外,且核心控制器130在计算***10的TLP确定要改变,或者多核心处理器100的UZ确定处在目标范围之外时计算目标性能指标。也就是说,如果多核心处理器100的UZ处于一个可接受范围内且计算***10的TLP没有变化时,核心控制器130不需要为确定多核心处理器100的另一设定再计算目标性能指标。
根据本申请的实施例中,多核心处理器100包含一个或多个第一核心(110-1到110-4)以及一个或多个第二核心(120-1到120-4),当前设定包含第一核心的第一设定以及第二核心的第二设定,且目标设定包含第一核心的第三设定以及第二核心的第四设定。而且,第一设定指示所有第一核心来开启,而第二设定指示所有第二核心开启,第三设定指示所有第一核心关闭,第四设定指示所有第二核心开启。
与传统的核心一个接一个开启的多核心管理机制(也就是每个调整中只有开启一个核心)所不同,上述的本申请的实施例显示了灵活且有战略的多核心管理。
图5显示根据本申请实施例的多核心处理器的控制方法的流程图。在步骤S501,监控多核心处理器的利用(utilization)。在步骤S503中,根据多核心处理器的利用、目标利用与第一性能指标来计算目标性能指标,其中第一性能指标与DVFS表的第一条目相关,该第一条目对应多核心处理器的当前设定。接着,根据目标性能指标与第二性能指标选择DVFS表的第二条目,该第二条目对应目标设定,该第二性能指标与第二条目相关(步骤S505)。在步骤S507,使用目标设定来设置多核心处理器。
图5中的方法可以硬件来执行(例如电路,专用逻辑,可编程逻辑,微代码,应用专用集成电路(ASIC),场可编程门阵列(FPGA)等等),或以软件来执行(例如,在操作设备上运行的指令),或者硬件与软件的结合。在一实施例中,该方法由图1的计算***10的核心控制器130来执行。
图5流程图中的操作已经以图1,4A与4B中的实施例进行描述。可是,需要理解的是,图5流程图中的操作也可以用不同于图1,4A与4B中的实施例的方式进行实施。并且图1,4A与4B中的实施例也可以执行不同于图5中流程图的操作。虽然图5中展示了本申请一些实施例操作的特定顺序,但需要理解,这样的顺序仅仅是为了解释,并非本申请的限制。(例如另外实施例可以不同顺序执行,或者把几个操作合并执行,或者取消某些操作,等等)。
根据上面的实施例的方法可记录于非暂时性(non-transitory)的计算机可读媒介,例如计算机内用来执行各种操作的程序指令。媒介还可包含除了程序指令等其他的,例如数据文件(data files),数据结构(datastructures)等。记录在媒介中的程序指令可以是为这些实施例特别设计建构的,或者也可以是本领域内技术人员所熟知的一般程序指令。非暂时性计算机可读媒介包含例如硬盘,软盘,磁碟等磁性媒介;也可以包含例如是CD ROM盘与DVD盘等光媒介;也可以是光盘等磁光媒介;硬件可以是特别设置来存储并执行程序指令的,例如是只读存储器(ROM),随机存取存储器(RAM),闪存等。计算机媒介也可以是分布式网络,这样程序指令可以分散的方式存储及运行。程序指令可由一个或多个处理器执行。计算机可读媒介也可存在于应用专用集成电路(ASIC)或可编程门阵列(FPGA)中,它们可像处理器一样执行程序指令。程序指令的例子包含例如编译器所产生的机器码,或者计算机使用翻译器执行的包含更高级码的文件。
本领域的技术人员将注意到,在获得本发明的指导之后,可对所述装置和方法进行大量的修改和变换。相应地,上述公开内容应该理解为,仅通过所附加的权利要求的界限来限定。
Claims (20)
1.一种计算***,包含:
多核心处理器;以及
核心控制器,监控该多核心处理器的利用;根据该多核心处理器的该利用、目标利用与第一性能指标,计算目标性能指标,其中该第一性能指标与动态电压频率调整表中的第一条目相关,该第一条目对应该多核心处理器的当前设定;并根据该目标性能指标与第二性能指标选择该动态电压频率调整表中的第二条目,该第二条目对应目标设定,该第二性能指标与该第二条目相关,
其中该目标设定用于设置该多核心处理器。
2.如权利要求1所述的计算***,其特征在于,该第二性能指标大于该目标性能指标。
3.如权利要求1所述的计算***,其特征在于,该核心控制器更根据计算***的运行序列长度计算该目标性能指标。
4.如权利要求1所述的计算***,其特征在于,该核心控制器更用来产生该动态电压频率调整表,其中该第一条目记录该当前设定与该第一性能指标,该第二条目记录该目标设定与该第二性能指标。
5.如权利要求4所述的计算***,其特征在于,该第一条目更记录第一功率指标,该第二条目更记录第二功率指标,该第二功率指标小于该计算***的功率限制。
6.如权利要求4所述的计算***,其特征在于,该核心控制器基于该计算***的线程级平行度产生该动态电压频率调整表,使得该动态电压频率调整表可被划分为多个子表,其中每个该子表对应不同的线程级平行度数值,并包含多个条目。
7.如权利要求6所述的计算***,其特征在于,该核心控制器更确定该计算***的该线程级平行度是否发生变化或者该多核心处理器的该利用是否处于目标范围之外,当该计算***的该线程级平行度确认发生变化或者该多核心处理器的该利用确认处于该目标范围之外时,该核心控制器计算该目标性能指标。
8.如权利要求6所述的计算***,其特征在于,当确认该计算***的该线程级平行度改变到第一线程级平行度数值时,该核心控制器从该动态电压频率调整表中的第一子表中选择该第二条目,该第二条目对应该第一线程级平行度数值。
9.如权利要求1所述的计算***,其特征在于,该多核心处理器包含一个或多个第一核心与一个或多个第二核心,该当前设定包含该第一核心的第一设定与该第二核心的第二设定,该目标设定包含该第一核心的第三设定与该第二核心的第四设定。
10.如权利要求9所述的计算***,其特征在于,该第一设定指示所有该第一核心开启,该第二设定指示所有该第二核心关闭,该第三设定指示所有该第一核心开启,该第四设定指示所有该第二核心开启。
11.一种在计算***内控制多核心处理器操作的方法,该方法包含:
监控该多核心处理器的利用;
根据该多核心处理器的该利用、目标利用与第一性能指标计算目标性能指标,其中该第一性能指标与动态电压频率调整表中的第一条目相关,该第一条目对应该多核心处理器的当前设定;
根据该目标性能指标与第二性能指标,选择该动态电压频率调整表的第二条目,该第二条目对应目标设定,该第二性能指标与该第二条目相关;以及
使用该目标设定设置该多核心处理器。
12.如权利要求11所述的在计算***内控制多核心处理器操作的方法,其特征在于,该第二性能指标大于该目标性能指标。
13.如权利要求11所述的在计算***内控制多核心处理器操作的方法,其特征在于,该目标性能指标的计算更根据该计算***的运行序列长度。
14.如权利要求11所述的在计算***内控制多核心处理器操作的方法,其特征在于,该第一条目记录该当前设定与该第一性能指标,该第二条目记录该目标设定与该第二性能指标。
15.如权利要求14所述的在计算***内控制多核心处理器操作的方法,其特征在于,该第一条目更记录第一功率指标,该第二条目更记录第二功率指标,该第二功率指标小于该计算***的功率限制。
16.如权利要求14所述的在计算***内控制多核心处理器操作的方法,其特征在于,该动态电压频率调整表是基于该计算***的线程级平行度而产生,使得该动态电压频率调整表可被划分为多个子表,其中每个该子表对应不同线程级平行度数值并包含多个条目。
17.如权利要求16所述的在计算***内控制多核心处理器操作的方法,其特征在于,该方法更包含:
确定该计算***的该线程级平行度是否改变或该多核心处理器的该利用是否处于目标范围之外;以及
当确定该计算***的该线程级平行度改变或该多核心处理器的该利用是处于该目标范围之外时,计算该目标性能指标。
18.如权利要求16所述的在计算***内控制多核心处理器操作的方法,其特征在于,当计算***的该线程级平行度改变为第一线程级平行度数值时,该第二条目从该动态电压频率调整表的第一子表中选择,该第二条目对应该第一线程级平行度数值。
19.如权利要求11所述的在计算***内控制多核心处理器操作的方法,其特征在于,该多核心处理器包含一个或多个第一核心与一个或多个第二核心,该当前设定包含该第一核心的第一设定,以及该第二核心的第二设定,该目标设定包含该第一核心的第三设定以及该第二核心的第四设定。
20.如权利要求19所述的在计算***内控制多核心处理器操作的方法,其特征在于,该第一设定指示所有该第一核心开启,而该第二设定指示所有该第二核心关闭,该第三设定指示所有该第一核心关闭,而该第四设定指示所有该第二核心开启。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562164129P | 2015-05-20 | 2015-05-20 | |
US62/164,129 | 2015-05-20 | ||
US14/845,879 US10031574B2 (en) | 2015-05-20 | 2015-09-04 | Apparatus and method for controlling multi-core processor of computing system |
US14/845,879 | 2015-09-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106168846A true CN106168846A (zh) | 2016-11-30 |
Family
ID=57325414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610329661.8A Withdrawn CN106168846A (zh) | 2015-05-20 | 2016-05-18 | 计算***与在计算***内控制多核心处理器操作的方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10031574B2 (zh) |
CN (1) | CN106168846A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708682A (zh) * | 2017-01-20 | 2017-05-24 | 郑州云海信息技术有限公司 | 一种提升服务器SPEC CPU speed测试成绩的方法 |
CN107197323A (zh) * | 2017-05-08 | 2017-09-22 | 上海工程技术大学 | 一种基于dvfs的网络视频点播服务器及其应用 |
Families Citing this family (11)
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 |
US9898218B2 (en) * | 2016-02-05 | 2018-02-20 | International Business Machines Corporation | Memory system with switchable operating bands |
US9934048B2 (en) * | 2016-03-29 | 2018-04-03 | Intel Corporation | Systems, methods and devices for dynamic power management of devices using game theory |
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 |
US10528118B2 (en) * | 2017-04-21 | 2020-01-07 | Intel Corporation | Dynamically power on/off register files during execution |
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 |
US10921876B2 (en) * | 2018-04-26 | 2021-02-16 | Mediatek Inc. | Runtime power table index adjustment for performance and power management |
US10955899B2 (en) | 2018-06-20 | 2021-03-23 | Intel Corporation | System, apparatus and method for responsive autonomous hardware performance state control of a processor |
KR102552954B1 (ko) * | 2018-11-07 | 2023-07-06 | 삼성전자주식회사 | 컴퓨팅 시스템 및 컴퓨팅 시스템의 동작 방법 |
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 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1993669A (zh) * | 2004-07-27 | 2007-07-04 | 英特尔公司 | 多核处理器内的电源管理协调 |
US20110047401A1 (en) * | 2009-08-24 | 2011-02-24 | Werner James B | Providing Adaptive Frequency Control For A Processor |
CN103502946A (zh) * | 2011-04-05 | 2014-01-08 | 高通股份有限公司 | 用于动态控制到便携式计算装置的多核心处理器中的多个核心的电力的方法和*** |
CN103678247A (zh) * | 2012-08-29 | 2014-03-26 | 三星电子株式会社 | 动态电压频率调节方法和装置 |
US20150026398A1 (en) * | 2013-07-19 | 2015-01-22 | Ho-sung Kim | Mobile device and a method of controlling the mobile device |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7134031B2 (en) * | 2003-08-04 | 2006-11-07 | Arm Limited | Performance control within a multi-processor system |
US20090015232A1 (en) * | 2003-11-18 | 2009-01-15 | Anton Rozen | Method and device for regulating a voltage supply to a semiconductor device |
US7788670B2 (en) * | 2004-10-26 | 2010-08-31 | Intel Corporation | Performance-based workload scheduling in multi-core architectures |
US7502948B2 (en) * | 2004-12-30 | 2009-03-10 | Intel Corporation | Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores |
US7263457B2 (en) * | 2006-01-03 | 2007-08-28 | Advanced Micro Devices, Inc. | System and method for operating components of an integrated circuit at independent frequencies and/or voltages |
US8250395B2 (en) * | 2009-11-12 | 2012-08-21 | International Business Machines Corporation | Dynamic voltage and frequency scaling (DVFS) control for simultaneous multi-threading (SMT) processors |
US8943334B2 (en) * | 2010-09-23 | 2015-01-27 | Intel Corporation | Providing per core voltage and frequency control |
KR101930752B1 (ko) * | 2012-02-24 | 2018-12-19 | 삼성전자 주식회사 | 멀티 코어를 포함하는 전자 기기의 전력 제어 방법 및 장치 |
US9619284B2 (en) * | 2012-10-04 | 2017-04-11 | Intel Corporation | Dynamically switching a workload between heterogeneous cores of a processor |
CN105247486B (zh) * | 2013-05-23 | 2019-05-21 | 瑞萨电子株式会社 | 多cpu***及多cpu***的调整方法 |
-
2015
- 2015-09-04 US US14/845,879 patent/US10031574B2/en active Active
-
2016
- 2016-05-18 CN CN201610329661.8A patent/CN106168846A/zh not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1993669A (zh) * | 2004-07-27 | 2007-07-04 | 英特尔公司 | 多核处理器内的电源管理协调 |
US20110047401A1 (en) * | 2009-08-24 | 2011-02-24 | Werner James B | Providing Adaptive Frequency Control For A Processor |
CN103502946A (zh) * | 2011-04-05 | 2014-01-08 | 高通股份有限公司 | 用于动态控制到便携式计算装置的多核心处理器中的多个核心的电力的方法和*** |
CN103678247A (zh) * | 2012-08-29 | 2014-03-26 | 三星电子株式会社 | 动态电压频率调节方法和装置 |
US20150026398A1 (en) * | 2013-07-19 | 2015-01-22 | Ho-sung Kim | Mobile device and a method of controlling the mobile device |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708682A (zh) * | 2017-01-20 | 2017-05-24 | 郑州云海信息技术有限公司 | 一种提升服务器SPEC CPU speed测试成绩的方法 |
CN107197323A (zh) * | 2017-05-08 | 2017-09-22 | 上海工程技术大学 | 一种基于dvfs的网络视频点播服务器及其应用 |
Also Published As
Publication number | Publication date |
---|---|
US10031574B2 (en) | 2018-07-24 |
US20160342198A1 (en) | 2016-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106168846A (zh) | 计算***与在计算***内控制多核心处理器操作的方法 | |
CN100456209C (zh) | 集成图形设备的功率管理 | |
Ibrahim et al. | Governing energy consumption in Hadoop through CPU frequency scaling: An analysis | |
US10444812B2 (en) | Power shifting in multicore platforms by varying SMT levels | |
US7386743B2 (en) | Power-managed server and method for managing power consumption | |
CN105388987B (zh) | 动态任务安排方法 | |
US7467311B2 (en) | Distributed system and method for managing power usage among server data processing systems | |
US7421599B2 (en) | Power management server and method for managing power consumption | |
US10146289B2 (en) | Power system utilizing processor core performance state control | |
US7788519B2 (en) | Method, system, and apparatus for improving multi-core processor performance | |
CN104169832B (zh) | 提供处理器的能源高效的超频操作 | |
TWI477945B (zh) | 用以控制處理器之渦輪加速模式頻率的方法、及能夠控制其之渦輪加速模式頻率的處理器 | |
CN105960620B (zh) | 动态电压裕度恢复 | |
US20110213991A1 (en) | Processor core communication in multi-core processor | |
EP3237998B1 (en) | Systems and methods for dynamic temporal power steering | |
CN107209548A (zh) | 在多核处理器中执行功率管理 | |
CN103294641B (zh) | 用于***管理的有限状态机 | |
US9778726B2 (en) | Deterministic current based frequency optimization of processor chip | |
US20130124890A1 (en) | Multi-core processor and method of power management of a multi-core processor | |
CN104583896A (zh) | 向处理器的异构计算元件分配功率 | |
CN101661324A (zh) | 一种多路服务器的节能方法 | |
CN107533479A (zh) | 功率知晓调度和功率管理器 | |
KR101463533B1 (ko) | 모바일 장치에서의 비대칭 멀티 프로세서 코어 스케줄링 방법 및 모바일 장치 | |
Cho et al. | A high performance load balance strategy for real‐time multicore systems | |
Li et al. | Energy-aware scheduling on multiprocessor platforms with devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20161130 |
|
WW01 | Invention patent application withdrawn after publication |