CN100555227C - 用于控制多内核处理器的方法 - Google Patents
用于控制多内核处理器的方法 Download PDFInfo
- Publication number
- CN100555227C CN100555227C CNB2004100709137A CN200410070913A CN100555227C CN 100555227 C CN100555227 C CN 100555227C CN B2004100709137 A CNB2004100709137 A CN B2004100709137A CN 200410070913 A CN200410070913 A CN 200410070913A CN 100555227 C CN100555227 C CN 100555227C
- Authority
- CN
- China
- Prior art keywords
- kernel
- thread
- state
- execution
- limit
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 230000015572 biosynthetic process Effects 0.000 claims description 8
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 229920006395 saturated elastomer Polymers 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 101150019307 RSU1 gene Proteins 0.000 description 1
- 102100030800 Ras suppressor protein 1 Human genes 0.000 description 1
- 101100524346 Xenopus laevis req-a gene Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 101150029619 rsp1 gene Proteins 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
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/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
-
- 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
-
- 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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- 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/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- 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/329—Power saving characterised by the action undertaken by task scheduling
-
- 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
-
- 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Investigating Or Analysing Biological Materials (AREA)
Abstract
本发明公开了一种***、装置和方法,以使内核定量分配逻辑可启用多内核处理器的内核来遵守各种功率约束和热约束。
Description
技术领域
本发明所公开的内容涉及功率管理领域。更具体地说,本发明的公开内容涉及一种尽管有功率约束也可提高多内核(multi-core)处理器性能的新方法和装置。
背景技术
对于多种类型的***和集成设备例如服务器、膝上计算机、处理器和桌面计算机来说,功率管理方案可减少功耗从而实现低功率的应用。一般地,对***和集成设备采用软件方法来支持多功率状态,从而至少部分地基于中央处理单元(CPU)的活动性来优化性能。
当前的功率管理方案或者降低电压或频率,或者同时降低二者,从而减少功耗。然而,这使得整体性能降低了。而且,一些方法包含了若干模拟设计,这些模拟设计具有和用于暂态工作负载、校准及调谐的循环稳定性相关的许多挑战。
随着多内核的处理器的引入,功率管理成为了一个很大的问题,因为多个内核以高频率和高电压运行,并且需要遵守多种功率约束,例如热极限、最大电流以及Vcc范围等。
发明内容
为了解决以上问题,本发明提供了一种尽管有功率约束也可提高多内核(multi-core)处理器性能的新方法和装置。根据本发明的一个方面,所要求的主题物是一种用于在多个处理器内核当中禁止到其中至少一个处理器内核的时钟的方法,该方法包括:至少部分地基于工作负载,计算执行内核极限;执行n个可用线程,其中n是整数;启用m个处理器内核,其中m是整数,并小于或等于可用线程的数量n。
根据本发明的另一方面,还提供了一种用于为多个处理器内核中的至少一个处理器内核选择电压和频率工作点的方法,包括:预测在所有所述多个处理器内核上运行的多个线程的活动性级别;至少部分地基于所述活动性级别,启用所述多个处理器内核中的一个子集。
根据本发明的另一方面,本发明所要求的主题物中还包括一种用于多个多内核处理器的状态图,其包括用于未分配线程的内核的第一状态;第二状态,该状态让一个队列存储分配有线程的内核;用于启用所述内核以运行线程的第三状态;以及用于禁止内核的第四状态。
根据本发明的又一方面,本发明还提供了一种用于多个多内核处理器的状态图的方法,该方法包括:向未分配线程的内核分配第一状态;对于存储分配有线程的内核的队列,分配第二状态;比较已启用的内核数量和执行内核极限,如果所述已启用内核的数量小于所述执行内核极限,则分配第三状态以启用所述内核来运行一个线程;以及分配第四状态以禁止内核。
根据本发明的另外一方面,所要求的主题物中还包括一种多内核处理器***,该***包括至少一个多内核处理器,其耦合到缓存,并至少耦合到两条用于接收请求和响应的顺时钟方向的总线;和内核定量分配逻辑,用于管理已启用内核的数量以使其小于或等于执行内核极限。
附图说明
附图中示例性而非限制性地示出了本发明。
图1示出了根据实施例而利用的方法的流程图。
图2示出了根据实施例而利用的柱状图。
图3示出了根据实施例而利用的柱状图。
图4示出了根据一个实施例的装置。
具体实施方式
下面的描述提供了用于尽管存在功率约束也可提高多内核处理器性能的方法和装置。在下面的描述中,给出了大量具体细节以提供对本发明更透彻的理解。然而,本领域内的技术人员将会认识到没有这些具体细节也可实施本发明。利用所包含的描述,本领域内的技术人员不必进行太多试验就能够实现适当的逻辑电路。
如上所述,在遵守功率约束的同时提高处理器性能会存在一个问题。现有的方法包括以降低整体性能为代价来降低电压或频率。相反,所要求的主题物在遵守功率约束的同时提高了整体性能。例如,“为处理器***定量分配执行内核的数量”这一原理使得在若干内核等待存储器事务完成时的空闲状态下禁止其时钟,因而提高频率。例如,所要求的主题物利用了通过禁止到某些处理器内核的时钟而形成的这些内核的空闲时间段,从而获得了较少的功耗。因此,由于降低了功耗,所以可以利用更高的频率。在一个实施例中,对于所述工作负载计算合适的执行内核极限。而且,在同一个实施例中,所述执行内核的数量小于或等于可用并就绪的线程的数量。线程是用于特定应用的一个独立指令集合。
在一个实施例中,所要求的主题物基于对运行在所有内核上的线程的活动性水平进行总体性的预测,从而帮助选择一个电压/频率工作点。例如,TPC-C线程往往在50-60%的时间中是活动的,它们40-50%的时间是空闲的,等待存储器引用的完成。在这种环境下,在一个实施例中,可以指定这样的执行内核极限,其等于管芯上内核总数的60%;在此情形下,如果有8个内核,则可以将执行内核极限设置为5。然后,可以指定一个电压-频率工作点,其对应于在一个时刻只有5个活动的内核,3个内核不活动(低功率状态);这一工作频率与如果允许所有8个内核同时都活动时可以指定的频率相比要高得多。所述内核定量分配逻辑约束了管芯的工作,确保在任何给定的时刻都不会有超过5个(在此情形下)内核是活动的。收集关于等待和定量分配队列的占用情况的统计数据(下面将结合图1进一步讨论);以一定的间隔对这些统计数据进行分析,以确定是否应改变工作点(执行内核极限及其关联电压/频率对)。如果等待队列总是为空而定量分配队列总是为满,这就指示了内核在可以推进时却没有推进,并且指示了应该提高执行内核极限并且降低电压/频率,以提高性能;相反,如果定量分配队列总是为空而等待队列总是为满,这就指示了可以通过降低执行内核极限并提高电压/频率点来提高性能。
图1示出了根据实施例而利用的方法的流程图。在一个实施例中,该流程图示出了用于状态图的方法。
在同一实施例中,所述状态图示出了用于***中的处理器内核的预定状态机。在这一相同的实施例中,所述状态机辅助“内核的定量分配”,由于禁止了到等待存储器事务完成的内核的时钟,因而提高了处理器性能。
在一个实施例中,所述状态图具有4个已定义的状态,如“内核未分配”状态202、“执行”状态204、“定量分配FIFO队列”状态206以及“等待”状态208。一开始,如下定义“内核未分配”状态:每个内核都没有所分配的线程。随后,如果一个线程被分配到某个内核,则所要求的主题物转换到“定量分配FIFO队列”状态206。在一个实施例中,FIFO被定义为先进先出。
一转换到“定量分配FIFO队列”状态,则确定执行内核的数量和执行内核极限(ECL)之间的对比关系。在一个实施例中,处理器或***规范确定了合适的执行内核极限以遵守热功率考虑因素。在一个实施例中,ECL由应用中下面将描述的公式来确定。当执行内核的数量小于ECL时,如果某个特定的内核是FIFO队列中将得到处理的下一个内核,则该内核转换到“执行”状态204。否则,该内核仍处于“定量分配FIFO队列”状态206。
一进入“执行”状态,所述内核就保持这一状态,除非发生某个事件,例如存储器引用和过热事件和/或公平性超时(fairness timeout)。例如,公平性超时可被利用来防止可能出现的现场锁定(live lock)状态。在此上下文中,存储器引用指的是对特定存储器地址的读或写操作,该存储器地址未驻留在耦合到处理器的任何缓存中(“所有缓存级中的缺失”)。因此,启动对主存储器的访问。
如果发生了上述事件,则内核转换到“等待”状态208。事件一完成,内核就转换到“定量分配FIFO队列”状态。在所述特定的线程完成之前,在状态204、206和208之间的这一循环序列会一直发生。线程一完成,内核就转换到“内核未分配”状态。
然而,所要求的主题物并不局限于所述状态图中的4个已定义的状态。所要求的主题物支持不同数量的状态。图1只是示出了这样的一个示例,其中将执行内核的数量限制为小于可用的线程的数量。例如,一个实施例可允许有多个等待状态。或者,所述等待状态可以被另一个队列状态取代。而且,根据触发从执行状态退出的事件的属性,状态图的其他实施例可对内核实现多种优先级,并且可具有不同的等待队列(存储器等待、热等待、ACPI等待等等)。
一般地,内核执行存储器读或写操作,随后执行取决于所述操作的操作(例如它利用了存储器读操作所返回的数据)。随后,内核“停滞”,等待该存储器操作完成。在此情形下,它发出一个信号,向中央内核定量分配逻辑表明它已停滞;这表明它可被内核定量分配逻辑禁止。内核定量分配逻辑通过让所讨论的内核进入“短睡”状态而对上述信号做出响应——它向所述内核发出“短睡”信号,使得该内核阻止指令发射,然后转换到(缓存一致的)低功率状态。而且,内核定量分配逻辑在等待队列中为该内核置入一个标识符。当存储器操作完成时,该内核解除所述“停滞”信号;内核定量分配逻辑通过将所述内核的标识符从等待队列移动到定量分配队列,从而对该信号做出响应。如果当前正在执行的(未“短睡”的)内核的数量小于或等于执行内核极限,则内核定量分配逻辑将最老的标识符从定量分配队列中去除,并解除到该内核的“短睡”信号。
图2示出了根据实施例而利用的柱状图。在一个实施例中,该柱状图示出了根据对多工作负载的蒙特卡洛仿真,对16内核多处理器而计算的花费在执行上的时间百分比。独立的横轴示出了2、4、6、8、10、12、14和16的ECL。而且,在利用1%、30%、40%和50%的(针对于执行时间的)存储器引用职责周期而仿真的不同工作负载处,对每个ECL都有一个图柱。
对50%的存储器引用职责周期进行分析,它显示出这一事实,即执行时间百分比在50%处饱和。因此,当ECL等于可用线程的数量时,对存储器引用的处理消耗了一半的执行时间。
图3示出了根据实施例而利用的柱状图。在图2之外,图3还示出了根据执行时间百分比和频率的乘积而计算的总体性能。所述总体性能还包含了频率与ECL成反比这一事实。如上所述,这一关系的存在是因为当减少执行内核的数量时,也使得功耗减少了。因此,可以提高频率以保持稳态热极限。
另外,图3示出了对于30%的存储器引用职责周期来说,最大执行时间百分比是70%。另外,饱和极限和线程数量的乘积标识出饱和的开始。需要注意饱和的开始,这是因为这可能是改进性能或最优性能的区域。
在一个实施例中,利用了一个自优化公式来确定合适的ECL。在该公式中,N表示具有上下文的线程的数量;%E表示执行时间百分比;而%M表示存储器引用时间百分比。该公式如下:
int(N×(%E/(%E+%M)))
图4示出了根据一个实施例的装置。在一个实施例中,该装置示出了具有多个处理器410的多内核处理器***,所述处理器分别耦合到第三级(L3)缓存的独立存储体(bank)。在同一实施例中,4条总线形成2个相反的旋转“环”——顺时针方向的请求/响应(REQ0/RSP0)环(402和404)和逆时针方向的请求/响应环(REQ1/RSP1)(406和408)。“P”和“C”之间的圆圈表示用于每个环的一对状态设备。这样,利用一组循环流水线来将信息从每个处理器内核/缓存存储体传递到任意其他的处理器/缓存存储体。该***接口逻辑包含用于存储器DIMM的存储器控制器、用于处理到其他处理器管芯或I/O子***的互连链路的路由器逻辑、以及多种其他***控制逻辑(包括中央内核定量分配控制器)。
尽管在附图中已描述并示出了特定的示例性实施例,但应当理解到,这些实施例只是对这一广泛发明的说明而非限制,本发明不应被局限于所示出和描述的具体构造和设置,因为对本领域内的技术人员来说在研究所公开的内容之后可作出多种其它的修改。
Claims (3)
1.一种用于控制多内核处理器的方法,包括:
至少部分基于工作负载来计算执行内核极限,其中所述执行内核极限至少部分地基于公式其中N表示具有上下文的线程的数量;%E表示执行时间百分比;而%M表示存储器引用时间百分比;
启用m个处理器内核,其中m是整数,并小于或等于可用线程的数量n,并且其中m小于或等于所述执行内核极限;
执行n个可用线程;以及
在一个处理器内核等待存储器操作的空闲时间段期间,禁止到所述m个处理器内核中的所述一个处理器内核的时钟。
2.一种用于控制多内核处理器的方法,包括:
向多内核处理器中的内核分配第一状态,所述第一状态表示所述内核没有分配给它的线程;
将线程分配给所述内核;
在将所述线程分配给所述内核后,使所述内核转换到第二状态,所述第二状态与定量分配队列相关;
在转换到所述第二状态后,将被启用的内核的数目与执行内核极限相比较,其中所述执行内核极限至少部分地基于公式其中N表示具有上下文的线程的数量;%E表示执行时间百分比;%M表示存储器引用时间百分比,而所述公式的结果表示所述执行内核极限;
如果所述被启用的内核的数目小于所述执行内核极限,则分配第三状态以启用所述内核来运行所述被分配的线程;以及
在进行存储器引用操作的情况下,向所述内核分配第四状态,其中所述内核在所述第四状态下将被禁止。
3.如权利要求2所述的方法,其中,所述定量分配队列是先进先出队列。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/621,228 US20050050310A1 (en) | 2003-07-15 | 2003-07-15 | Method, system, and apparatus for improving multi-core processor performance |
US10/621,228 | 2003-07-15 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710106805.4A Division CN101320289B (zh) | 2003-07-15 | 2004-07-13 | 提高多内核处理器性能的方法、***和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1577280A CN1577280A (zh) | 2005-02-09 |
CN100555227C true CN100555227C (zh) | 2009-10-28 |
Family
ID=34103183
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100709137A Expired - Fee Related CN100555227C (zh) | 2003-07-15 | 2004-07-13 | 用于控制多内核处理器的方法 |
CN200710106805.4A Expired - Fee Related CN101320289B (zh) | 2003-07-15 | 2004-07-13 | 提高多内核处理器性能的方法、***和装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710106805.4A Expired - Fee Related CN101320289B (zh) | 2003-07-15 | 2004-07-13 | 提高多内核处理器性能的方法、***和装置 |
Country Status (8)
Country | Link |
---|---|
US (6) | US20050050310A1 (zh) |
JP (1) | JP4413924B2 (zh) |
KR (1) | KR100856605B1 (zh) |
CN (2) | CN100555227C (zh) |
DE (1) | DE112004001320B3 (zh) |
GB (1) | GB2420435B (zh) |
TW (1) | TWI280507B (zh) |
WO (1) | WO2005010737A2 (zh) |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4015934B2 (ja) | 2002-04-18 | 2007-11-28 | 株式会社東芝 | 動画像符号化方法及び装置 |
US20050050310A1 (en) | 2003-07-15 | 2005-03-03 | Bailey Daniel W. | Method, system, and apparatus for improving multi-core processor performance |
US20050154573A1 (en) * | 2004-01-08 | 2005-07-14 | Maly John W. | Systems and methods for initializing a lockstep mode test case simulation of a multi-core processor design |
KR101108397B1 (ko) | 2005-06-10 | 2012-01-30 | 엘지전자 주식회사 | 멀티-코어 프로세서의 전원 제어 장치 및 방법 |
KR101177125B1 (ko) | 2005-06-11 | 2012-08-24 | 엘지전자 주식회사 | 멀티-코어 프로세서의 합성모드 구현 방법 및 장치 |
KR100663864B1 (ko) | 2005-06-16 | 2007-01-03 | 엘지전자 주식회사 | 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법 |
GB0519981D0 (en) | 2005-09-30 | 2005-11-09 | Ignios Ltd | Scheduling in a multicore architecture |
US20070271130A1 (en) * | 2006-05-19 | 2007-11-22 | Microsoft Corporation | Flexible scheduling and pricing of multicore computer chips |
US7752468B2 (en) * | 2006-06-06 | 2010-07-06 | Intel Corporation | Predict computing platform memory power utilization |
US8028290B2 (en) | 2006-08-30 | 2011-09-27 | International Business Machines Corporation | Multiple-core processor supporting multiple instruction set architectures |
CN100451972C (zh) * | 2006-09-26 | 2009-01-14 | 杭州华三通信技术有限公司 | 提高多核***访问临界资源速度的方法和装置 |
US8032772B2 (en) * | 2007-11-15 | 2011-10-04 | Intel Corporation | Method, apparatus, and system for optimizing frequency and performance in a multi-die microprocessor |
US8359487B2 (en) * | 2008-03-19 | 2013-01-22 | Sony Corporation | System and method for effectively performing a clock adjustment procedure |
US8010822B2 (en) * | 2008-03-28 | 2011-08-30 | Microsoft Corporation | Power-aware thread scheduling and dynamic use of processors |
US20090259793A1 (en) * | 2008-04-10 | 2009-10-15 | Sony Corporation And Sony Electronics Inc. | System and method for effectively implementing an erase mode for a memory device |
US7757233B2 (en) * | 2008-07-10 | 2010-07-13 | International Business Machines Corporation | Controlling a computer system having a processor including a plurality of cores |
US8181049B2 (en) * | 2009-01-16 | 2012-05-15 | Freescale Semiconductor, Inc. | Method for controlling a frequency of a clock signal to control power consumption and a device having power consumption capabilities |
EP2435914B1 (en) * | 2009-05-26 | 2019-12-11 | Telefonaktiebolaget LM Ericsson (publ) | Method and scheduler in an operating system |
US8543857B2 (en) * | 2009-09-26 | 2013-09-24 | Intel Corporation | Method and apparatus for low power operation of multi-core processors |
KR101680109B1 (ko) * | 2009-10-29 | 2016-12-12 | 삼성전자 주식회사 | 복수 코어 장치 및 그의 로드 조정 방법 |
KR101648978B1 (ko) * | 2009-11-05 | 2016-08-18 | 삼성전자주식회사 | 저전력 멀티코어 시스템에서의 전력 제어 방법 및 장치 |
US20110138395A1 (en) * | 2009-12-08 | 2011-06-09 | Empire Technology Development Llc | Thermal management in multi-core processor |
TWI425359B (zh) * | 2010-03-05 | 2014-02-01 | Asustek Comp Inc | 電腦系統之中央處理器開核裝置 |
CN101799773B (zh) * | 2010-04-07 | 2013-04-17 | 福州福昕软件开发有限公司 | 并行计算的内存访问方法 |
CN102243523B (zh) * | 2010-05-12 | 2014-01-08 | 英业达股份有限公司 | 具有备用电源机制的数据储存*** |
US8484498B2 (en) * | 2010-08-26 | 2013-07-09 | Advanced Micro Devices | Method and apparatus for demand-based control of processing node performance |
US8495395B2 (en) | 2010-09-14 | 2013-07-23 | Advanced Micro Devices | Mechanism for controlling power consumption in a processing node |
US8726055B2 (en) | 2010-09-20 | 2014-05-13 | Apple Inc. | Multi-core power management |
WO2012098684A1 (ja) | 2011-01-21 | 2012-07-26 | 富士通株式会社 | スケジューリング方法およびスケジューリングシステム |
US8185758B2 (en) * | 2011-06-30 | 2012-05-22 | Intel Corporation | Method and system for determining an energy-efficient operating point of a platform |
US8719607B2 (en) | 2011-12-01 | 2014-05-06 | International Business Machines Corporation | Advanced Pstate structure with frequency computation |
US8782466B2 (en) * | 2012-02-03 | 2014-07-15 | Hewlett-Packard Development Company, L.P. | Multiple processing elements |
CN104185827B (zh) * | 2012-03-31 | 2017-03-15 | 英特尔公司 | 控制多核环境中的功率消耗 |
CN102789301A (zh) * | 2012-05-17 | 2012-11-21 | 江苏中科梦兰电子科技有限公司 | 一种计算机的电源管理方法 |
US9250682B2 (en) | 2012-12-31 | 2016-02-02 | Intel Corporation | Distributed power management for multi-core processors |
US9292288B2 (en) | 2013-04-11 | 2016-03-22 | Intel Corporation | Systems and methods for flag tracking in move elimination operations |
KR102110812B1 (ko) * | 2013-05-30 | 2020-05-14 | 삼성전자 주식회사 | 멀티 코어 시스템 및 멀티 코어 시스템의 작업 스케줄링 방법 |
US9507404B2 (en) | 2013-08-28 | 2016-11-29 | Via Technologies, Inc. | Single core wakeup multi-core synchronization mechanism |
US9792112B2 (en) | 2013-08-28 | 2017-10-17 | Via Technologies, Inc. | Propagation of microcode patches to multiple cores in multicore microprocessor |
CN104216861B (zh) * | 2013-08-28 | 2019-04-19 | 威盛电子股份有限公司 | 微处理器及在微处理器中同步处理核的方法 |
US9465432B2 (en) * | 2013-08-28 | 2016-10-11 | Via Technologies, Inc. | Multi-core synchronization mechanism |
KR20150050135A (ko) | 2013-10-31 | 2015-05-08 | 삼성전자주식회사 | 복수의 이종 코어들을 포함하는 전자 시스템 및 이의 동작 방법 |
JP6291966B2 (ja) * | 2014-03-31 | 2018-03-14 | 日本電気株式会社 | 初期化処理高速化システム、初期化処理高速化装置、初期化処理高速化方法及び初期化処理高速化プログラム |
KR102169692B1 (ko) | 2014-07-08 | 2020-10-26 | 삼성전자주식회사 | 멀티-코어 프로세서를 포함하는 시스템 온 칩 및 그것의 동적 전력 관리 방법 |
GB2528845B (en) * | 2014-07-30 | 2016-12-14 | Jaguar Land Rover Ltd | Feedback through brake inputs |
US9696787B2 (en) * | 2014-12-10 | 2017-07-04 | Qualcomm Innovation Center, Inc. | Dynamic control of processors to reduce thermal and power costs |
US9569264B2 (en) | 2015-03-17 | 2017-02-14 | Freescale Semiconductor,Inc. | Multi-core system for processing data packets |
CN106293644B (zh) * | 2015-05-12 | 2022-02-01 | 超威半导体产品(中国)有限公司 | 考虑时间热耦合的功率预算方法 |
US20170185128A1 (en) * | 2015-12-24 | 2017-06-29 | Intel Corporation | Method and apparatus to control number of cores to transition operational states |
CN106201726A (zh) * | 2016-07-26 | 2016-12-07 | 张升泽 | 多内核芯片线程分配方法及*** |
CN106598203B (zh) * | 2016-12-21 | 2019-04-23 | 上海海事大学 | 一种数据密集环境下的单芯片多处理器***的电源管理方法 |
US10649943B2 (en) | 2017-05-26 | 2020-05-12 | Dell Products, L.P. | System and method for I/O aware processor configuration |
US10762031B2 (en) | 2017-06-12 | 2020-09-01 | Dell Products, L.P. | System and method for setting equalization for communication between a processor and a device |
JP2020149317A (ja) | 2019-03-13 | 2020-09-17 | 株式会社デンソー | 車両用装置 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5168554A (en) * | 1989-10-13 | 1992-12-01 | International Business Machines Corporation | Converting trace data from processors executing in parallel into graphical form |
US5189314A (en) * | 1991-09-04 | 1993-02-23 | International Business Machines Corporation | Variable chip-clocking mechanism |
JPH0659906A (ja) * | 1992-08-10 | 1994-03-04 | Hitachi Ltd | 並列計算機の実行制御方法 |
US5442775A (en) * | 1994-02-08 | 1995-08-15 | Meridian Semiconductor, Inc. | Two clock microprocessor design with stall |
US5737615A (en) * | 1995-04-12 | 1998-04-07 | Intel Corporation | Microprocessor power control in a multiprocessor computer system |
JPH09138716A (ja) * | 1995-11-14 | 1997-05-27 | Toshiba Corp | 電子計算機 |
JPH09185589A (ja) | 1996-01-05 | 1997-07-15 | Toshiba Corp | 情報処理システムと情報処理システムの省電力方法 |
GB2311882B (en) | 1996-04-04 | 2000-08-09 | Videologic Ltd | A data processing management system |
US6549954B1 (en) * | 1997-01-16 | 2003-04-15 | Advanced Micro Devices, Inc. | Object oriented on-chip messaging |
US5913069A (en) | 1997-12-10 | 1999-06-15 | Cray Research, Inc. | Interleaving memory in distributed vector architecture multiprocessor system |
JP4172054B2 (ja) | 1998-03-30 | 2008-10-29 | マツダ株式会社 | 自動変速機の制御装置 |
US6529921B1 (en) * | 1999-06-29 | 2003-03-04 | Microsoft Corporation | Dynamic synchronization of tables |
US6440282B1 (en) * | 1999-07-06 | 2002-08-27 | Applied Materials, Inc. | Sputtering reactor and method of using an unbalanced magnetron |
US6889319B1 (en) * | 1999-12-09 | 2005-05-03 | Intel Corporation | Method and apparatus for entering and exiting multiple threads within a multithreaded processor |
US6357016B1 (en) * | 1999-12-09 | 2002-03-12 | Intel Corporation | Method and apparatus for disabling a clock signal within a multithreaded processor |
US6550020B1 (en) * | 2000-01-10 | 2003-04-15 | International Business Machines Corporation | Method and system for dynamically configuring a central processing unit with multiple processing cores |
US6640282B2 (en) * | 2000-01-25 | 2003-10-28 | Hewlett-Packard Development Company, L.P. | Hot replace power control sequence logic |
US6574739B1 (en) * | 2000-04-14 | 2003-06-03 | Compal Electronics, Inc. | Dynamic power saving by monitoring CPU utilization |
US20020018877A1 (en) | 2000-08-02 | 2002-02-14 | Woodall Calvin L. | Reduced motion and anti slip pad |
WO2002039242A1 (en) * | 2000-10-31 | 2002-05-16 | Millennial Net, Inc. | Networked processing system with optimized power efficiency |
US6920572B2 (en) * | 2000-11-15 | 2005-07-19 | Texas Instruments Incorporated | Unanimous voting for disabling of shared component clocking in a multicore DSP device |
US6990598B2 (en) * | 2001-03-21 | 2006-01-24 | Gallitzin Allegheny Llc | Low power reconfigurable systems and methods |
AU2002368540A1 (en) * | 2001-05-16 | 2005-02-14 | North Carolina State University | Methods for forming tunable molecular gradients on substrates |
US6901522B2 (en) * | 2001-06-07 | 2005-05-31 | Intel Corporation | System and method for reducing power consumption in multiprocessor system |
JP3610930B2 (ja) | 2001-07-12 | 2005-01-19 | 株式会社デンソー | オペレーティングシステム、プログラム、車両用電子制御装置 |
US20030079151A1 (en) * | 2001-10-18 | 2003-04-24 | International Business Machines Corporation | Energy-aware workload distribution |
US6985952B2 (en) * | 2001-10-31 | 2006-01-10 | International Business Machines Corporation | Energy-induced process migration |
US6804632B2 (en) * | 2001-12-06 | 2004-10-12 | Intel Corporation | Distribution of processing activity across processing hardware based on power consumption considerations |
US7318164B2 (en) * | 2001-12-13 | 2008-01-08 | International Business Machines Corporation | Conserving energy in a data processing system by selectively powering down processors |
EP1338956A1 (fr) * | 2002-02-20 | 2003-08-27 | STMicroelectronics S.A. | Dispositif électronique de traitement de données, en particulier processeur audio pour un décodeur audio/vidéo |
US7480911B2 (en) * | 2002-05-09 | 2009-01-20 | International Business Machines Corporation | Method and apparatus for dynamically allocating and deallocating processors in a logical partitioned data processing system |
US20040128663A1 (en) * | 2002-12-31 | 2004-07-01 | Efraim Rotem | Method and apparatus for thermally managed resource allocation |
US6971034B2 (en) | 2003-01-09 | 2005-11-29 | Intel Corporation | Power/performance optimized memory controller considering processor power states |
US7093147B2 (en) * | 2003-04-25 | 2006-08-15 | Hewlett-Packard Development Company, L.P. | Dynamically selecting processor cores for overall power efficiency |
US20050050310A1 (en) | 2003-07-15 | 2005-03-03 | Bailey Daniel W. | Method, system, and apparatus for improving multi-core processor performance |
-
2003
- 2003-07-15 US US10/621,228 patent/US20050050310A1/en not_active Abandoned
-
2004
- 2004-07-13 CN CNB2004100709137A patent/CN100555227C/zh not_active Expired - Fee Related
- 2004-07-13 CN CN200710106805.4A patent/CN101320289B/zh not_active Expired - Fee Related
- 2004-07-14 WO PCT/US2004/022354 patent/WO2005010737A2/en active Application Filing
- 2004-07-14 TW TW093120990A patent/TWI280507B/zh not_active IP Right Cessation
- 2004-07-14 JP JP2006520257A patent/JP4413924B2/ja not_active Expired - Fee Related
- 2004-07-14 KR KR1020067000942A patent/KR100856605B1/ko not_active IP Right Cessation
- 2004-07-14 DE DE112004001320T patent/DE112004001320B3/de not_active Expired - Fee Related
- 2004-07-14 GB GB0602753A patent/GB2420435B/en not_active Expired - Fee Related
-
2006
- 2006-01-20 US US11/336,302 patent/US20060123263A1/en not_active Abandoned
- 2006-01-20 US US11/336,303 patent/US20060117200A1/en not_active Abandoned
- 2006-01-20 US US11/336,681 patent/US7389440B2/en not_active Expired - Fee Related
- 2006-01-20 US US11/336,015 patent/US7392414B2/en not_active Expired - Fee Related
-
2007
- 2007-03-15 US US11/686,861 patent/US7788519B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2005010737A2 (en) | 2005-02-03 |
US7392414B2 (en) | 2008-06-24 |
TWI280507B (en) | 2007-05-01 |
US20060123264A1 (en) | 2006-06-08 |
KR20060031868A (ko) | 2006-04-13 |
US20060123263A1 (en) | 2006-06-08 |
US7788519B2 (en) | 2010-08-31 |
US20070198872A1 (en) | 2007-08-23 |
JP4413924B2 (ja) | 2010-02-10 |
TW200515289A (en) | 2005-05-01 |
GB2420435A (en) | 2006-05-24 |
CN101320289B (zh) | 2014-06-25 |
CN1577280A (zh) | 2005-02-09 |
US20060117200A1 (en) | 2006-06-01 |
DE112004001320B3 (de) | 2011-09-15 |
US20050050310A1 (en) | 2005-03-03 |
GB0602753D0 (en) | 2006-03-22 |
KR100856605B1 (ko) | 2008-09-03 |
GB2420435B (en) | 2008-06-04 |
CN101320289A (zh) | 2008-12-10 |
JP2007535721A (ja) | 2007-12-06 |
US7389440B2 (en) | 2008-06-17 |
US20060117199A1 (en) | 2006-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100555227C (zh) | 用于控制多内核处理器的方法 | |
US10613876B2 (en) | Methods and apparatuses for controlling thread contention | |
Hammarlund et al. | Haswell: The fourth-generation intel core processor | |
US9223383B2 (en) | Guardband reduction for multi-core data processor | |
US9098274B2 (en) | Methods and apparatuses to improve turbo performance for events handling | |
KR100831460B1 (ko) | 다중 스레드 프로세서의 성능 제어를 위한 장치 및 방법 | |
US20070162911A1 (en) | Multi-core multi-thread processor | |
CN103176943A (zh) | 用于功率优化的多处理器同步的方法 | |
US20130081038A1 (en) | Multiprocessor computing device | |
EP3588288A1 (en) | A multithreaded processor core with hardware-assisted task scheduling | |
EP3356910B1 (en) | Power-aware cpu power grid design | |
CN111052094B (zh) | 使用c状态和睿频加速提高用户空间的自旋锁效率 | |
CN110399034A (zh) | 一种SoC***的功耗优化方法及终端 | |
WO2023081054A1 (en) | Performance management during power supply voltage droop | |
US20130246670A1 (en) | Information processing system | |
US6681320B1 (en) | Causality-based memory ordering in a multiprocessing environment | |
CN117882028A (zh) | 基于限制硬件强制的功率控制的功率管理 | |
WO2024006086A1 (en) | Efficient memory power control operations | |
Chiu et al. | The Rendezvous Mechanism for the Multi-core AMBA System |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091028 Termination date: 20130713 |