CN1577280A - 提高多内核处理器性能的方法、系统和装置 - Google Patents

提高多内核处理器性能的方法、系统和装置 Download PDF

Info

Publication number
CN1577280A
CN1577280A CNA2004100709137A CN200410070913A CN1577280A CN 1577280 A CN1577280 A CN 1577280A CN A2004100709137 A CNA2004100709137 A CN A2004100709137A CN 200410070913 A CN200410070913 A CN 200410070913A CN 1577280 A CN1577280 A CN 1577280A
Authority
CN
China
Prior art keywords
kernel
state
processor cores
limit
execution
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
CNA2004100709137A
Other languages
English (en)
Other versions
CN100555227C (zh
Inventor
丹尼尔·W·贝利
托德·达顿
特里格韦·福萨姆
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of CN1577280A publication Critical patent/CN1577280A/zh
Application granted granted Critical
Publication of CN100555227C publication Critical patent/CN100555227C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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
    • 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
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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/329Power saving characterised by the action undertaken by task scheduling
    • 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)
  • 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 (21)

1.一种用于在多个处理器内核当中禁止到其中至少一个处理器内核的时钟的方法,包括:
至少部分地基于工作负载,计算执行内核极限;
执行n个可用线程,其中n是整数;
启用m个处理器内核,其中m是整数,并小于或等于可用线程的数量n。
2.如权利要求1所述的方法,其中,当至少一个处理器内核等待存储器操作而处于空闲时间中时,禁止到该处理器内核的时钟。
3.如权利要求1所述的方法,其中,禁止到至少一个处理器内核的时钟导致功耗降低。
4.如权利要求1所述的方法,其中,禁止到至少一个处理器内核的时钟使得可提高该处理器内核的工作频率。
5.一种用于为多个处理器内核中的至少一个处理器内核选择电压和频率工作点的方法,包括:
预测在所有所述多个处理器内核上运行的多个线程的活动性级别;
至少部分地基于所述活动性级别,启用所述多个处理器内核中的一个子集。
6.如权利要求5所述的方法,其中,所述活动性级别是执行内核极限,所述执行内核极限至少部分地基于对热功率考虑因素的遵守。
7.如权利要求6所述的方法,其中,所述执行内核极限至少部分地基于一个公式,其中N表示具有上下文的线程数量;%E表示执行时间百分比;而%M表示存储器引用时间百分比,该公式如下
int(N×(%E/(%E+%M)))。
8.一种用于多个多内核处理器的状态图,包括:
用于未分配线程的内核的第一状态;
第二状态,该状态让一个队列存储分配有线程的内核;
用于启用所述内核以运行线程的第三状态;以及
用于禁止内核的第四状态。
9.如权利要求8所述的状态图,其中,所述队列是先进先出队列。
10.如权利要求8所述的状态图,其中,如果所启用的内核的数量小于执行内核极限,则所述内核从所述第二状态转换到所述第三状态。
11.如权利要求10所述的状态图,其中,所述执行内核极限至少部分地基于一个公式,其中N表示具有上下文的线程数量;%E表示执行时间百分比;而%M表示存储器引用时间百分比,该公式如下
int(N×(%E/(%E+%M)))。
12.如权利要求8所述的状态图,其中,如果所述内核在等待存储器操作完成时是空闲的,则该内核从所述第三状态转换到所述第四状态。
13.一种用于多个多内核处理器的状态图的方法,包括:
向未分配线程的内核分配第一状态;
对于存储分配有线程的内核的队列,分配第二状态;
比较已启用的内核数量和执行内核极限,如果所述已启用内核的数量小于所述执行内核极限,则分配第三状态以启用所述内核来运行一个线程;以及
分配第四状态以禁止内核。
14.如权利要求13所述的方法,其中,所述队列是先进先出队列。
15.如权利要求13所述的方法,其中所述执行内核极限至少部分地基于一个公式,其中N表示具有上下文的线程数量;%E表示执行时间百分比;而%M表示存储器引用时间百分比,该公式如下
int(N×(%E/(%E+%M)))。
16.如权利要求13所述的方法,其中,如果所述内核在等待存储器操作完成时是空闲的,则该内核从所述第三状态转换到所述第四状态。
17.一种多内核处理器系统,包括:
至少一个多内核处理器,其耦合到缓存,并至少耦合到两条用于接收请求和响应的顺时钟方向的总线;以及
内核定量分配逻辑,用于管理已启用内核的数量以使其小于或等于执行内核极限。
18.如权利要求17所述的系统,其中,所述执行内核极限至少部分地基于一个公式,其中N表示具有上下文的线程数量;%E表示执行时间百分比;而%M表示存储器引用时间百分比,该公式如下
int(N×(%E/(%E+%M)))。
19.如权利要求17所述的系统,还包括一个系统接口,该接口包括:
用于存储器DIMM的多个存储器控制器;
用于处理到其他处理器管芯或I/O子系统的互连链路的路由器逻辑;以及
所述内核定量分配逻辑。
20.如权利要求17所述的系统,还包括至少两条逆时钟方向的总线,用于接收请求和响应。
21.如权利要求17所述的系统,其中,所述缓存是具有多个独立存储体的第三级存储器。
CNB2004100709137A 2003-07-15 2004-07-13 用于控制多内核处理器的方法 Expired - Fee Related CN100555227C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/621,228 2003-07-15
US10/621,228 US20050050310A1 (en) 2003-07-15 2003-07-15 Method, system, and apparatus for improving multi-core processor performance

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 true CN1577280A (zh) 2005-02-09
CN100555227C CN100555227C (zh) 2009-10-28

Family

ID=34103183

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200710106805.4A Expired - Fee Related CN101320289B (zh) 2003-07-15 2004-07-13 提高多内核处理器性能的方法、系统和装置
CNB2004100709137A Expired - Fee Related CN100555227C (zh) 2003-07-15 2004-07-13 用于控制多内核处理器的方法

Family Applications Before (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) CN101320289B (zh)
DE (1) DE112004001320B3 (zh)
GB (1) GB2420435B (zh)
TW (1) TWI280507B (zh)
WO (1) WO2005010737A2 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008043295A1 (fr) * 2006-09-26 2008-04-17 Hangzhou H3C Technologies Co., Ltd. Procédé et dispositif permettant d'augmenter la rapidité d'accès à une ressource critique par un système multicoeur
CN101799773A (zh) * 2010-04-07 2010-08-11 福州福昕软件开发有限公司 并行计算的内存访问方法
CN102033596A (zh) * 2009-09-26 2011-04-27 英特尔公司 用于多核心处理器的低功率操作的方法和装置
CN102243523A (zh) * 2010-05-12 2011-11-16 英业达股份有限公司 具有备用电源机制的数据储存系统
CN102789301A (zh) * 2012-05-17 2012-11-21 江苏中科梦兰电子科技有限公司 一种计算机的电源管理方法
CN101625650B (zh) * 2008-07-10 2013-03-27 国际商业机器公司 具有包括多个内核的处理器的计算机系统及其控制方法
CN101981529B (zh) * 2008-03-28 2013-09-11 微软公司 功率知晓线程调度和处理器的动态使用
CN104185827A (zh) * 2012-03-31 2014-12-03 英特尔公司 控制多核环境中的功率消耗
CN106201726A (zh) * 2016-07-26 2016-12-07 张升泽 多内核芯片线程分配方法及系统
CN106293644A (zh) * 2015-05-12 2017-01-04 超威半导体产品(中国)有限公司 考虑时间热耦合的功率预算方法
CN103119536B (zh) * 2010-08-26 2017-02-15 超威半导体公司 处理节点的动态性能控制
CN106598203A (zh) * 2016-12-21 2017-04-26 上海海事大学 一种数据密集环境下的单芯片多处理器系统的电源管理方法

Families Citing this family (42)

* Cited by examiner, † Cited by third party
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
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
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
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
WO2010138031A1 (en) * 2009-05-26 2010-12-02 Telefonaktiebolaget Lm Ericsson (Publ) Method and scheduler in an operating system
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 電腦系統之中央處理器開核裝置
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
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 삼성전자 주식회사 멀티 코어 시스템 및 멀티 코어 시스템의 작업 스케줄링 방법
US9792112B2 (en) 2013-08-28 2017-10-17 Via Technologies, Inc. Propagation of microcode patches to multiple cores in multicore microprocessor
US9465432B2 (en) * 2013-08-28 2016-10-11 Via Technologies, Inc. Multi-core synchronization mechanism
CN104216861B (zh) * 2013-08-28 2019-04-19 威盛电子股份有限公司 微处理器及在微处理器中同步处理核的方法
US9891927B2 (en) 2013-08-28 2018-02-13 Via Technologies, Inc. Inter-core communication via uncore RAM
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
US20170185128A1 (en) * 2015-12-24 2017-06-29 Intel Corporation Method and apparatus to control number of cores to transition operational states
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)

* Cited by examiner, † Cited by third party
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
DE60143707D1 (de) * 2000-10-31 2011-02-03 Millennial Net Inc Vernetztes verarbeitungssystem mit optimiertem leistungswirkungsgrad
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
US6770323B2 (en) * 2001-05-16 2004-08-03 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

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8190857B2 (en) 2006-09-26 2012-05-29 Hangzhou H3C Technologies, Co., Ltd Deleting a shared resource node after reserving its identifier in delete pending queue until deletion condition is met to allow continued access for currently accessing processor
WO2008043295A1 (fr) * 2006-09-26 2008-04-17 Hangzhou H3C Technologies Co., Ltd. Procédé et dispositif permettant d'augmenter la rapidité d'accès à une ressource critique par un système multicoeur
CN101981529B (zh) * 2008-03-28 2013-09-11 微软公司 功率知晓线程调度和处理器的动态使用
CN101625650B (zh) * 2008-07-10 2013-03-27 国际商业机器公司 具有包括多个内核的处理器的计算机系统及其控制方法
CN102033596A (zh) * 2009-09-26 2011-04-27 英特尔公司 用于多核心处理器的低功率操作的方法和装置
CN102033596B (zh) * 2009-09-26 2015-11-25 英特尔公司 用于多核心处理器的低功率操作的方法和装置
CN101799773B (zh) * 2010-04-07 2013-04-17 福州福昕软件开发有限公司 并行计算的内存访问方法
CN101799773A (zh) * 2010-04-07 2010-08-11 福州福昕软件开发有限公司 并行计算的内存访问方法
CN102243523A (zh) * 2010-05-12 2011-11-16 英业达股份有限公司 具有备用电源机制的数据储存系统
CN102243523B (zh) * 2010-05-12 2014-01-08 英业达股份有限公司 具有备用电源机制的数据储存系统
CN103119536B (zh) * 2010-08-26 2017-02-15 超威半导体公司 处理节点的动态性能控制
CN104185827A (zh) * 2012-03-31 2014-12-03 英特尔公司 控制多核环境中的功率消耗
CN104185827B (zh) * 2012-03-31 2017-03-15 英特尔公司 控制多核环境中的功率消耗
US9846475B2 (en) 2012-03-31 2017-12-19 Intel Corporation Controlling power consumption in multi-core environments
CN102789301A (zh) * 2012-05-17 2012-11-21 江苏中科梦兰电子科技有限公司 一种计算机的电源管理方法
CN106293644A (zh) * 2015-05-12 2017-01-04 超威半导体产品(中国)有限公司 考虑时间热耦合的功率预算方法
CN106201726A (zh) * 2016-07-26 2016-12-07 张升泽 多内核芯片线程分配方法及系统
CN106598203A (zh) * 2016-12-21 2017-04-26 上海海事大学 一种数据密集环境下的单芯片多处理器系统的电源管理方法
CN106598203B (zh) * 2016-12-21 2019-04-23 上海海事大学 一种数据密集环境下的单芯片多处理器系统的电源管理方法

Also Published As

Publication number Publication date
CN101320289B (zh) 2014-06-25
US7392414B2 (en) 2008-06-24
US20070198872A1 (en) 2007-08-23
TWI280507B (en) 2007-05-01
GB2420435B (en) 2008-06-04
GB0602753D0 (en) 2006-03-22
DE112004001320B3 (de) 2011-09-15
GB2420435A (en) 2006-05-24
US20050050310A1 (en) 2005-03-03
US20060117200A1 (en) 2006-06-01
CN101320289A (zh) 2008-12-10
KR20060031868A (ko) 2006-04-13
US20060123263A1 (en) 2006-06-08
US20060117199A1 (en) 2006-06-01
CN100555227C (zh) 2009-10-28
WO2005010737A2 (en) 2005-02-03
JP2007535721A (ja) 2007-12-06
US7389440B2 (en) 2008-06-17
TW200515289A (en) 2005-05-01
JP4413924B2 (ja) 2010-02-10
US20060123264A1 (en) 2006-06-08
US7788519B2 (en) 2010-08-31
KR100856605B1 (ko) 2008-09-03

Similar Documents

Publication Publication Date Title
CN100555227C (zh) 用于控制多内核处理器的方法
KR100831460B1 (ko) 다중 스레드 프로세서의 성능 제어를 위한 장치 및 방법
US7209996B2 (en) Multi-core multi-thread processor
US9098274B2 (en) Methods and apparatuses to improve turbo performance for events handling
US8141089B2 (en) Method and apparatus for reducing contention for computer system resources using soft locks
EP3588288B1 (en) A multithreaded processor core with hardware-assisted task scheduling
CN103176943A (zh) 用于功率优化的多处理器同步的方法
US20100262966A1 (en) Multiprocessor computing device
US20130124838A1 (en) Instruction level execution preemption
CN111052094B (zh) 使用c状态和睿频加速提高用户空间的自旋锁效率
CN110399034A (zh) 一种SoC系统的功耗优化方法及终端
US20130132711A1 (en) Compute thread array granularity execution preemption
CN102193828B (zh) 从处理器中的并发物理线程的数目中去耦合逻辑线程的数目
US10884477B2 (en) Coordinating accesses of shared resources by clients in a computing device
US6681320B1 (en) Causality-based memory ordering in a multiprocessing environment
DE112022004199T5 (de) Leistungsverwaltung basierend auf der Begrenzung einer Hardware-erzwungenen Leistungssteuerung
CN115934309A (zh) 用于核心特定度量收集的技术
US20120079208A1 (en) Probe speculative address file
CN118550598A (zh) 软硬件紧耦合的保序方法及系统
Chiu et al. The Rendezvous Mechanism for the Multi-core AMBA System
Lee et al. Overcoming Memory Bottleneck with Near-Data GPU Acceleration

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