CN104106053A - 使用功率的动态cpu gpu 负载平衡 - Google Patents
使用功率的动态cpu gpu 负载平衡 Download PDFInfo
- Publication number
- CN104106053A CN104106053A CN201280069225.1A CN201280069225A CN104106053A CN 104106053 A CN104106053 A CN 104106053A CN 201280069225 A CN201280069225 A CN 201280069225A CN 104106053 A CN104106053 A CN 104106053A
- Authority
- CN
- China
- Prior art keywords
- core
- instruction
- gpu
- cpu
- performance number
- 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
Links
Classifications
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
-
- 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
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4893—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
-
- 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
-
- 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)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Abstract
基于功率描述了动态CPU GPU负载平衡。在一个例子中,指令被接收,且中央处理核心(CPU)和图形处理核心(GPU)的功率值被接收。基于所接收到的功率值来选择CPU或GPU,且指令被发送到选定的核心用于处理。
Description
背景技术
发展了通用图形处理单元(GPGPU)以允许图形处理单元(GPU)执行在传统上由中央处理单元(CPU)执行的一些任务。一般GPU的多个并行处理线程非常适合一些处理任务但不适合其它处理任务。最近,发展了操作***以允许一些任务被指派给GPU。此外,发展了允许使用不同类型的处理资源来执行指令的框架,例如OpenCL(开放式计算语言)。
同时,一般由GPU执行的一些任务可由CPU执行,且存在能够将一些图形任务指派给CPU的可用的硬件和软件***。包括在同一封装中或甚至在同一管芯上的CPU和GPU的集成异构***使任务分配更有效。然而,很难在不同类型的处理资源之间找到任务的共享和平衡的最佳平衡。
各种不同的代理可用于估计在GPU和CPU上的负载。软件指令或数据队列可用于确定哪个核心更忙碌,并接着将任务指派给其它核心。类似地,可比较输出以确定在当前工作负载上的进展。也可监控在命令或执行流中的计数器。这些度量使用核心的工作负载提供核心的进展或结果的直接测量。然而,这样的度量的集合需要资源,且不指示核心的潜在能力,只有它如何对付它被给予的东西。
附图说明
本发明的实施例作为例子而不是作为限制在附图的图中示出,其中相似的参考数字表示相似的元件。
图1是根据本发明的实施例的用于执行动态负载平衡以用于运行软件应用的***的图。
图2是根据本发明的实施例的用于执行动态负载平衡以用于运行游戏的***的图。
图3A是根据本发明的实施例的执行动态负载平衡的过程流程图。
图3B是根据本发明的另一实施例的执行动态负载平衡的过程流程图。
图4是根据本发明的实施例的确定用于执行动态负载平衡的功率预算的过程流程图。
图5是适合于实现本发明的实施例的计算***的方框图。
图6示出在其中可提现图5的***的小形状因子设备的实施例。
具体实施方式
本发明的实施例可应用于各种不同的CPU和CPU组合中的任一个,包括可编程的那些组合和支持处理任务的动态平衡的那些组合。技术可应用于包括CPU和GPU或CPU和GPU核心的单个管芯,以及应用于包括用于CPU和GPU功能的单独管芯的封装。它也可应用于在单独管芯中的分立图形、或单独封装、或甚至单独电路板例如***设备适配器卡。本发明的实施例允许基于CPU和GPU功率计在CPU和GPU处理资源之间动态地平衡处理任务的负载。本发明在应用于***(其中CPU和GPU共享同一功率预算)时可能是特别有用的。在这样的***中,可能考虑功率消耗和功率趋势。
动态负载平衡可能对3D(三维)处理是特别有用的。CPU的计算和功率余量允许CPU帮助3D处理,且以这种方式,更多的***总计算资源被使用。例如OpenCL的CPU/GPU API(应用编程接口)也可受益于在CPU和GPU之间的动态负载平衡内核。存在用于动态负载平衡的很多其它应用,其通过允许另一处理资源做得更多来提供较高的性能。使工作在CPU和GPU之间平衡允许平台的计算和功率资源被更有效和充分地利用。
在一些***中,功率控制单元(PCU)还提供功率计功能。来自功率计的值可被查询和收集。这用于允许基于对每个可分离的动力单元的工作负载要求而分配功率。在本公开中,功率计值用于调节工作负载要求。
功率计可用作对功率消耗的代理。功率消耗也可用作对负载的代理。高功率消耗暗示核心是忙碌的。低功率消耗暗示核心不那么忙碌。然而,存在对低功率的明显的例外。一个这样的例外是GPU可以是“忙碌的”,因为采样器都被充分利用,但GPU仍然不充分利用功率预算。
功率计和来自功率管理硬件(例如PCU)的其它指示可用于帮助从功率方面评估CPU和GPU有多忙碌。中央处理核心或图形核心的评估也允许其它核心的相应余量被确定。该数据可用于驱动使用处理平台的更多资源的有效的工作负载平衡引擎。
普遍使用的性能度量(例如忙碌和空闲状态)不提供核心的功率余量的任何指示。使用功率度量,负载平衡引擎可允许对特定的任务更有效的核心以全频率运行以及较不有效的核心以剩余功率运行。当任务或过程改变时,其它核心可替代地以全功率运行。
目前,一些处理器使用Turbo BoostTM模式,其中处理器被允许以高得多的时钟速度运行一段短的时间。这使处理器消耗更多的功率并产生更多的热,但如果处理器足够快地返回到较低速度、较低功率模式,则它将被保护免受过热。使用功率计或其它功率指示帮助确定CPU功率余量,而不减少Turbo Boost模式的使用。在Turbo Boost模式中的GPU的情况下,GPU可被允许在期望时以其最大频率工作,且CPU可消耗剩余功率。
在CPU和GPU共享相同的功率预算的***中,例如功率计读数的功率指示可用于确定任务是否可卸载到CPU或GPU。对于图形处理,GPU可被允许使用大部分功率,且然后CPU可被允许在可能时(即,当存在足够的功率余量时)进行帮助。GPU通常对图形处理任务更有效。另一方面,CPU通常对大部分其它任务和一般任务(例如遍历树)更有效。在这样的情况下,CPU可被允许使用大部分功率,且然后GPU可被允许在可能时进行帮助。
在图1中示出用于通用处理的示例性体系结构。计算机***封装101包含CPU 103、GPU 104和功率逻辑105。这些可都在相同或不同的管芯上。可选地,它们可以在不同的封装中,并直接地或通过插座单独地附接到母板。计算机***支持运行时间108,例如操作***或内核等。具有并行数据或图形的应用109在运行时间之上运行,并对运行时间产生调用或可执行命令。运行时间将这些调用或可执行命令交付给计算***的驱动器106。驱动器将这些作为命令或指令呈送到计算***101。为了控制操作如何被处理,驱动器106包括如上所述在CPU和GPU之间分配负载的负载平衡引擎107。
描述了单个CPU和GPU,以便不模糊本发明,然而可以有多个实例,每个实例可以在单独的封装中或在一个封装中。计算环境可具有在图1中示出的简单结构,或公共工作站可具有两个CPU和2或3个分立的GPU,每个CPU具有4或6个核心,每个GPU具有其自己的功率控制单元。本文描述的技术可应用于任何这样的***。
图2示出在运行3D游戏129的背景中的示例性计算***121。3D游戏129在DirectX或类似的运行时间128上操作,并发出通过用户模式驱动器126发送到计算***121的图形调用。计算***可本质上与图1的计算***相同并包括CPU 123、GPU 124和功率逻辑125。
在图1的例子中,计算***运行将主要由CPU处理的应用。然而,在应用包括并行数据操作和图形元件的程度上,这些可由GPU处理。负载平衡引擎可用于将适当的指令或命令发送到负载平衡引擎,以便将一些工作负载从CPU移动到GPU。相反,在图2的例子中,3D游戏将主要由GPU处理。然而,负载平衡引擎可将一些工作负载从GPU移动到CPU。
通过考虑图3A的过程流程图可更好地理解本文描述的负载平衡技术。在1处,***接收指令。这一般由驱动器接收,且然后对负载平衡引擎是可用的。在图3A的例子中,负载平衡引擎偏向于CPU,如可能对图1的计算机配置的情况。取决于应用和运行时间,指令可作为命令、API或以各种其它形式中的任一种被接收。驱动器或负载平衡引擎可将命令解析成可由CPU和GPU独立地处理的更简单或更基本的指令。
在2处,***检查指令以确定指令是否可被分配。所解析的指令或指令在它们被接收到时可接着被分类为三种类别。一些指令必须由CPU处理。将文件保存到大容量存储设备或发送和接收电子邮件的操作是几乎所有指令一般必须由CPU执行的操作的例子。其它指令必须由GPU处理。光栅化或转换像素以用于显示的指令一般必须在GPU处被执行。第三类指令可由CPU或GPU处理,例如物理计算或遮蔽和几何指令。对于第三组指令,负载平衡引擎可决定将指令发送到哪里以进行处理。
如果指令不能被分配,则在3处,它被发送到CPU或GPU,这取决于指令在2处如何被存储。
如果指令可被分配,则负载平衡引擎决定将指令分配到哪里,到CPU或GPU。负载平衡引擎可使用各种度量来做出明智的决定。度量可包括GPU利用率、CPU利用率、功率方案等。
在本发明的一些实施例中,负载平衡引擎可确定核心之一是否被充分利用。决策块4是可根据特定的实施例来使用的可选分支。在4处,引擎考虑CPU是否被充分加载。如果没有被充分加载,则在7处将指令传递到CPU。这在5处使指令的分配偏向于CPU并绕过决策块。
如果CPU被充分加载,则在5处功率预算被比较以确定指令是否可传递到GPU。在没有这个可选分支4的情况下,如果指令是可被分配的则指令在5处被直接传递用于决定。可选地,如图3B所示,引擎可考虑GPU是否被充分加载,如果是,且如果在CPU功率预算中有空间则将指令传递到CPU。在任一情况下,在4处的操作可被移除。
可以用各种不同的方式中的任一种来确定处理器核心的条件是被充分加载或充分利用。在一个例子中,可监控指令或软件队列。如果它是满的或忙碌的,则核心可被认为是充分加载的。为了更准确的确定,保持命令的软件队列的条件可在时间间隔内被监控,且在该间隔期间将忙碌时间的量与空闲时间的量进行比较以确定相对量的利用率。可对该时间间隔确定忙碌时间的百分比。这个或另一量的利用率可接着与阈值比较以在4处做出决定。
也可通过检查硬件计数器来确定处理器核心的条件。CPU和GPU核心具有可被监控的几个不同的计数器。如果这些计数器是忙碌或活动的,则核心是忙碌的。如同队列监控一样,可在时间间隔内测量活动量。多个计数器可被监控,且结果通过相加、平均或某个其它方法被组合。作为例子,执行单元(例如处理核心或着色器核心、纹理采样器、算术单元和在处理器内的其它类型的执行单元)的计数器可被监控。
在本发明的一些实施例中,功率计可用作负载平衡引擎决定的部分。负载平衡引擎可使用来自CPU和GPU的当前功率读数以及在后台中收集的历史功率数据。使用当前和历史数据,例如,如图4所示,负载平衡引擎计算对将工作卸载到GPU或CPU可用的功率预算。例如,如果CPU在8W(具有15W的TDP(总管芯功率))下且GPU在9W(具有11W的TDP)下,则两个管芯都在最大功率之下操作。CPU在这种情况下具有7W的功率预算,且GPU具有2W的功率预算。基于这些预算,任务可由负载平衡引擎从GPU卸载到CPU,反之亦然。
为了更好的决定,GPU和CPU的功率计读数可以用某个其它方式在一段时间(例如最后10ms内)被积分、平均或组合。产生的积分值可与可在工厂配置或随着时间的过去而设置的某个“安全”阈值进行比较。如果CPU一直安全地运行,则GPU任务可被卸载到CPU。功率计值或积分值可与功率预算比较。如果当前工作估计可适合预算,则它可被卸载到GPU。对于其它功率预算情况,工作可替代地被卸载到CPU。
在5处,负载平衡引擎比较GPU预算与阈值T,以确定向哪里发送指令。如果GPU预算大于T,或换句话说,如果在GPU预算中有空间,则在6处指令被发送到GPU。另一方面,如果GPU预算小于T,这意味着在GPU预算中有不足的空间,则指令在7处被发送到CPU。阈值T代表最小数量的功率预算,其将允许指令由CPU成功地处理。可通过运行一组工作负载以调节最佳T来离线地确定阈值。它也可基于随着时间而学习核心的活动工作负载而动态地改变。
在5处的决定可偏向于支持在***上运行的特定类型的软件。对于游戏,负载平衡引擎可配置成通过将GPU预算阈值T设置得较低来有利于GPU。这可提供更好的性能,因为GPU能够更平稳地处理重图形要求。这也可使用在4处的操作或以另一方式来完成。
使用与在4的决策块类似的另一可选的决策块,GPU也可被测试以确定它是否被完全加载或它是否具有可用的额外功率余量。这可用于允许可被发送到GPU的所有指令被发送到GPU。相反,如果GPU没有额外功率余量,则可选择CPU。可选地,负载平衡引擎可配置成有利于CPU,也许因为GPU与CPU相比是弱的,且如果GPU被帮助则游戏可玩性被提高。在这样的情况下,负载平衡引擎将以相反的方式运转。如果CPU具有可用的额外功率余量,则将选择CPU。相反,只有当CPU没有额外功率余量时才选择GPU。这在游戏环境(其中大部分指令必须由GPU处理)中最大化了被发送到CPU的指令。
这种偏向可基于硬件配置或基于正运行的应用的类型或基于由负载平衡引擎看到的调用的类型而嵌入***内。也可通过将比例或因子应用于决定而减少偏向。
在这个过程流程中提到的预算是基于来自功率控制单元的功率计值的功率预算。在一个例子中,预算是可在下一时间间隔内消耗的瓦数,而不打破CPU***的热限制。所以,例如,如果存在可在下一时间间隔(例如1ms)消耗的1W的预算,则那将是足够的预算以将指令从GPU卸载到CPU。在确定预算时的一个考虑是对GPU加速模式(例如Turbo Boost)的影响。为了维持GPU加速模式可以确定并使用预算。
可从功率控制单元(PCU)得到预算。功率控制单元的配置和位置将取决于计算***的体系结构。在图1和2的所示例子中,功率控制单元是在具有非核心和多个处理核心的集成同构管芯中的非核心的部分。然而,功率控制单元可以是从***板上的各种不同的位置收集功率信息的单独管芯。在图1和2的例子中,驱动器106、126具有在PCU内的钩以收集关于功率消耗、开销和预算的信息。
各种不同的方法可用于确定功率预算。在一个例子中,功率值周期性地从PCU被接收,并接着被存储以每当可分配的指令被接收到时被使用。可通过使用周期性功率值随着时间跟踪功率值的历史来以更复杂的计算为代价执行改善的决定过程。历史可被推测以提供每个核心的未来功率预测值。接着基于预测的未来功率值来选择核心—CPU或GPU。
预算值可以是功率消耗值(不管是瞬时、当前或预测的)的比较,并可通过比较功率消耗值与核心的最大可能的功率消耗来确定。例如,如果核心消耗12W并具有19W的最大功率消耗,则它具有7W的剩余预算或开销。预算也可考虑其它核心。总的可用功率可小于所有核心可消耗的总的最大功率。例如,如果CPU具有19W的最大功率且GPU具有22W的最大功率,但PCU可供应不大于27W,则这两个核心不能同时在最大功率下操作。这样的配置可能被期望允许核心以较高的速率短暂地操作。负载平衡引擎不能以使两个核心到达它们的各自最大功率水平时的速率供应指令。可用功率预算可相应地减小以解释PCU的能力。
图3B是有利于GPU的过程的过程流程图,如可在图2的背景中使用的。在21处,***例如驱动器126接收指令。这可对偏向于GPU的负载平衡引擎变得可用。驱动器或负载平衡引擎根据实现来分析或解析命令以将它精简到可独立地由CPU和GPU处理的指令。
在22处,***检查指令以确定指令是否可被分配。必须由CPU或GPU处理的指令在23处被发送到其各自的目的地。
如果指令可被分配,则负载平衡引擎做出将指令分配到哪里的决定,到CPU或GPU。如在图3A中的,可选的操作可用于确定GPU是否在决策块4处被完全加载。如果它没有被完全加载,则指令在27处被传递到GPU,决策块在25处被绕过。如果GPU被完全加载,则功率预算在25处被分析以确定指令是否可被传递到CPU。
在25处,负载平衡引擎比较CPU预算与阈值T,以确定向哪里发送指令。如果CPU预算大于T,则在26处指令被发送到CPU。另一方面,如果CPU预算小于T,则指令在27处被发送到GPU。阈值T代表CPU的最小数量的功率预算,并可以用与图3A的阈值类似的方式被确定。
图4示出用于确定将在图3A或3B的过程流程中使用的预算的并行过程流程。在图4中,在11处,接收每个核心或每组核心的当前功率消耗。在具有多个CPU核心和多个GPU核心的计算***中,指令被单独地分配给每个核心或可在中央处理和图形处理之间划分。CPU核心的单独过程可接着用于在核心和线程之间分配指令(如果有的话)。类似地,这个或单独的过程或这两者可用于在中央处理核心当中或在图形处理核心当中分配指令。
在12处,所接收的当前功率消耗与最大功率消耗比较以确定每个核心的当前预算。在13处,这个值被存储。当前功率消耗值被周期性地接收,且因此在11、12和13处的操作可被重复。可使用FIFO(先进先出)缓冲器,以便只存储某个数量的预算值。可在图3的操作中使用大部分最近值,或可在14处对值执行某个操作。
在14处,当前的和以前的预算值被比较以确定预估的预算。对于图3的操作,预估的预算接着用作预算值。可根据特定的实现以各种不同的方式执行该比较。在一个例子中,可采用平均值。在另一例子中,可执行外推或积分。外推可基于功率控制***的其它已知方面被限制到最大和最小值。可根据特定的实现可选地使用更复杂的分析和统计方法。
在图3A和3B中描述的方法的可选方法中,当前处理核心功率负载可简单地与总的可用负载比较。TDP=正常操作功率包络。如上面提到的,TDP(总的管芯功率)将由PCU或由管芯的热设计约束确定。可简单地通过从TDP减去CPU和GPU核心的当前功率负载来确定预算。预算可接着与预算的阈值量比较。如果预算大于阈值,则指令可被分配到另一核心。
作为另一操作,另一核心也可被检查以确定在指令被卸载之前它是否在其所分配的功率范围内操作。这个简化的方法可应用于各种不同的***,并可用于将指令卸载到CPU或GPU或特定的核心。
图5示出***500的实施例。在实施例中,***500可以是介质***,但是***500不限于这个背景。例如,***500可合并到个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、触控板、便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、蜂窝电话/PDA组合、电视机、智能设备(例如智能电话、智能平板计算机或智能电视)、移动互联网设备(MID)、消息发送设备、数据通信设备等中。
在实施例中,***500包括耦合到显示器520的平台502。平台502可从内容设备(例如内容服务设备530或内容交付设备540)或其它类似的内容源接收内容。包括一个或多个导航特征的导航控制器550可用于与例如平台502和/或显示器520交互作用。下面更详细描述这些部件中的每个。
在实施例中,平台502可包括芯片组505、处理器510、存储器512、存储设备514、图形子***515、应用516和/或无线电设备518的任何组合。芯片组505可提供在处理器510、存储器512、存储设备514、图形子***515、应用516和/或无线电设备518当中的相互通信。例如,芯片组505可包括能够提供与存储设备514的相互通信的存储适配器(未描绘)。
处理器510可被实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核心或任何其它微处理器或中央处理单元(CPU)。在实施例中,处理器510可包括双核处理器、双核移动处理器等。
存储器512可被实现为易失性存储器设备,例如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。
存储设备514可被实现为非易失性存储设备,例如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附加存储设备、闪存、电池备份SDRAM(同步DRAM)、和/或网络可访问的存储设备。在实施例中,存储设备514可包括例如当包括多个硬盘驱动器时增加有价值的数字媒体的存储性能增强保护的技术。
图形子***515可执行图像(例如静止图像或视频)的处理用于显示。图形子***515可以是例如图形处理单元(GPU)或视觉处理单元(VPU)。模拟或数字接口可用于通信地耦合图形子***515和显示器520。例如,接口可以是高清多媒体接口、显示器端口、无线HDMI、和/或符合无线HD的技术中的任一个。图形子***515可集成到处理器510或芯片组505中。图形子***515可以是通信地耦合到芯片组505的独立卡。
本文描述的图形和/或视频处理技术可在各种硬件体系结构中实现。例如,图形和/或视频功能可集成在芯片组内。可选地,可使用分立的图形和/或视频处理器。作为又一实施例,图形和/或视频功能可由通用处理器(包括多核处理器)实现。在另一实施例中,功能可在消费电子设备中实现。
无线电设备518可包括能够使用各种适当的无线通信技术来发送并接收信号的一个或多个无线电设备。这样的技术可涉及跨越一个或多个无线网络的通信。示例性无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨越这样的网络的通信中,无线电设备518可根据以任何版本的一个或多个可应用标准来操作。
在实施例中,显示器520可包括任何电视机型监视器或显示器。显示器520可包括例如计算机显示屏、触摸屏显示器、视频监视器、电视机式设备、和/或电视机。显示器520可以是数字和/或模拟的。在实施例中,显示器520可以是全息显示器。此外,显示器520可以是可接收视觉投影的透明表面。这样的投影可传送各种形式的信息、图像和/或对象。例如,这样的投影可以是移动增强显示(MAR)应用的视觉覆盖。在一个或多个软件应用516的控制下,平台502可在显示器520上显示用户界面522。
在实施例中,内容服务设备530可由任何国家、国际和/或独立服务托管,且因此是平台502例如经由互联网可访问的。内容服务设备530可耦合到平台502和/或显示器520。平台502和/或内容服务设备530可耦合到网络560,以将媒体信息来回传递(例如发送和/或接收)到网络560。内容交付设备540也可耦合到平台502和/或显示器520。
在实施例中,内容服务设备530可包括有线电视盒、个人计算机、网络、电话、启用互联网的设备或能够交付数字信息和/或内容的电器、以及能够经由网络560或直接地在内容提供者和平台502和/或显示器520之间单向或双向地传递内容的任何其它类似的设备。将认识到,内容可经由网络560单向和/或双向地被来回传递到***500中的部件中的任一个和内容提供者。内容的例子可包括任何媒体信息,包括例如视频、音乐、医疗和游戏信息等。
内容服务设备530接收内容,例如有线电视节目,包括媒体信息、数字信息和/或其它内容。内容提供者的例子可包括任何有线或***或无线电台或互联网内容提供者。所提供的例子并不意味着限制本发明的实施例。
在实施例中,平台502可从具有一个或多个导航特征的导航控制器550接收控制信号。控制器550的导航特征可用于与例如用户界面522交互。在实施例中,导航控制器550可以是指向设备,其可以是允许用户将空间(例如连续和多维的)数据输入到计算机中的计算机硬件部件(具体地,人机接口设备)。很多***,例如图形用户界面(GUI)和电视机和监视器,允许用户使用物理手势来控制并提供数据到计算机或电视机。
可通过指针、光标、聚焦环或显示在显示器上的其它视觉指示器的运动来在显示器(例如显示器520)上模仿控制器550的导航特征的运动。例如,在软件应用516的控制下,位于导航控制器550上的导航特征可被映射到显示在例如用户界面522上的虚拟导航特征。在实施例中,控制器550可以不是单独的部件,而是集成到平台502和/或显示器520中。然而,实施例不限于在本文所示或所述的元件或背景中。
在实施例中,驱动器(未示出)可包括使用户能够像电视机一样例如在初始引导之后当被启动时使用按钮的触摸即时地开启和关闭平台502的技术。当平台被“关闭”时,程序逻辑可允许平台502将内容流式传送到媒体适配器或其它内容服务设备530或内容交付设备540。此外,芯片组505可包括例如对5.1环绕声音频和/或高清7.1环绕声音频的硬件和/或软件支持。驱动器可包括集成图形平台的图形驱动器。在实施例中,图形驱动器可包括***部件互连(PCI)快速图形卡。
在各种实施例中,在***500中所示的部件中的任一个或多个可被集成。例如,平台502和内容服务设备530可被集成,或平台502和内容交付设备540可被集成,或例如平台502、内容服务设备530和内容交付设备540可被集成。在各种实施例中,平台502和显示器520可以是集成单元。例如,显示器520和内容服务设备530可被集成,或显示器520和内容交付设备540可被集成。这些例子并不意味着限制本发明。
在各种实施例中,***500可被实现为无线***、有线***或这两者的组合。当被实现为无线***时,***500可包括适合于通过无线共享介质例如一个或多个天线、发射机、接收机、收发机、放大器、滤波器、控制逻辑等进行通信的部件和接口。无线共享介质的例子可包括无线频谱例如FR频谱等的部分。当被实现为有线***时,***500可包括适合于通过有线通信介质进行通信的部件和接口,例如输入/输出(I/O)适配器、使I/O适配器与相应的有线通信介质连接的物理连接器、网络接口卡(NIC)、磁盘控制器、视频控制器、音频控制器等。有线通信介质的例子可包括电线、电缆、金属引线、印刷电路板(PCB)、底板、交换结构、半导体材料、双绞线、同轴电缆、光纤等。
平台502可建立一个或多个逻辑或物理通道以传递信息。信息可包括媒体信息和控制信息。媒体信息可以指代表打算给用户的内容的任何数据。内容的例子可包括例如来自语音通话的数据、视频会议、流式视频、电子邮件(“email”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等。来自语音通话的数据可以是例如言语信息、静默时间、背景噪声、舒适噪声、音调等。控制信息可以指代表打算给自动化***的命令、指令或控制字的任何数据。例如,控制信息可用于通过***路由媒体信息或指示节点以预定的方式处理媒体信息。然而实施例不限于在图5中所示或所述的元件或背景中。
如上所述,***500可体现在变化的物理风格或形状因子中。图6示出在其中可提现***500的小形状因子设备600的实施例。在实施例中,例如设备600可被实现为具有无线能力的移动计算设备。例如,移动计算设备可以指具有处理***和移动功率源或电源(例如一个或多个电池)的任何设备。
如上所述,移动计算设备的例子可包括个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、触控板、便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、蜂窝电话/PDA组合、电视机、智能设备(例如智能电话、智能平板计算机或智能电视)、移动互联网设备(MID)、消息发送设备、数据通信设备等。
移动计算设备的例子还可包括布置成由人佩戴的计算机,例如手腕计算机、手指计算机、戒指计算机、眼镜计算机、腰带夹计算机、臂带计算机、鞋计算机、衣服计算机和其它可佩戴的计算机。在实施例中,例如,移动计算设备可被实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。虽然可以通过例子用实现为智能电话的移动计算设备来描述一些实施例,但可认识到,其它实施例也可使用其它无线移动计算设备来实现。实施例并不被限制在这个背景中。
如图6所示,设备600可包括壳体602、显示器604、输入/输出(I/O)设备606和天线608。设备600还可包括导航特征612。显示器604可包括用于显示适合于移动计算设备的信息的任何适当的显示单元。I/O设备606可包括用于将信息输入到移动计算设备中的任何适当的I/O设备。I/O设备606的例子可包括字母数字键盘、数字小键盘、触控板、输入键、按钮、开关、摇臂开关、麦克风、扬声器、语音识别设备和软件等。信息也可通过麦克风输入到设备600中。这样的信息可由语音识别设备进行数字化。实施例并不限制在这个背景中。
可使用硬件元件、软件元件或这两者的组合来实现各种实施例。硬件元件的例子可包括处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组等。软件的例子可包括软件部件、程序、应用、计算机程序、应用程序、***程序、机器程序、操作***软件、中间件、固件、软件模块、例程、子例程、功能、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任何组合。确定实施例是否使用硬件元件和/或软件元件实现可根据任何数量的因素而变化,所述因素例如期望的计算速率、功率级、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其它设计或性能约束。
至少一个实施例的一个或多个方面可由存储在代表处理器内的各种逻辑的机器可读介质上的代表性指令实现,指令在由机器读取时使机器制造逻辑以执行本文描述的技术。被称为“IP核心”的这样的表示可存储在有形机器可读介质上,并被提供到各种消费或制造设施以装入实际上制造逻辑或处理器的制造机器中。
对“一个实施例”、“实施例”、“示例性实施例”、“各种实施例”等的提及指示这样描述的本发明的实施例可包括特定的特征、结构或特性,但不是每个实施例都必须包括特定的特征、结构或特性。此外,一些实施例可具有一些、所有、或没有一个对其它实施例描述的特征。
在下面的描述和权利要求中,可使用术语“耦合”连同其派生词。“耦合”用于指示两个或多个元件彼此协作或交互作用,但它们可以有或可以没有在它们之间的中间物理或电部件。
如在权利要求中使用的,除非另有规定,描述普通元件的顺序形容词“第一”、“第二”、“第三”等的使用仅仅指示相似的元件的不同实例被提到且并不用来暗示这样描述的元件在时间上、在空间上、在等级上或以任何其它方式必须以给定顺序。
附图和前述描述给出实施例的例子。本领域中的技术人员将认识到,一个或多个所述元件可很好地组合成单个功能元件。可选地,某些元件可分成多个功能元件。来自一个实施例的元件可被添加到另一实施例。例如,本文描述的过程的顺序可改变且不限于本文描述的方式。而且,任何流程图的行动不需要以所示顺序实现;所有行动也不一定需要被执行。此外,不依赖于其它行动的那些行动可与其它行动并行地执行。实施例的范围决不由这些特定的例子显示。很多变化—不管是否在说明书中给出—例如在结构、尺寸和材料使用上的差异是可能的。实施例的范围至少与下面的权利要求所给出的一样宽。
Claims (19)
1.一种方法,包括:
接收指令;
接收中央处理核心(CPU)和图形处理核心(GPU)的功率值;
基于所接收到的功率值从所述CPU和所述GPU当中选择核心;以及
将所述指令发送到选定的核心用于处理。
2.如权利要求1所述的方法,其中接收功率值包括:接收当前功率消耗值。
3.如权利要求1所述的方法,其中接收功率值包括:周期性地接收功率值,并存储所接收到的功率值以在接收指令时使用。
4.如权利要求3所述的方法,还包括使用周期性功率值随着时间而跟踪功率值的历史,基于所跟踪的历史来预测每个核心的未来功率值,且其中选择核心包括基于所预测的未来功率值来选择核心。
5.如权利要求4所述的方法,其中跟踪历史包括:跟踪与所述核心的最大可能的功率消耗比较的功率消耗的历史。
6.如权利要求1所述的方法,还包括使用所接收到的功率值来确定所述CPU和所述GPU的功率预算,且其中选择核心包括通过选择具有最大功率预算的核心来选择核心。
7.如权利要求6所述的方法,其中确定功率预算包括:确定与所述最大可能的功率消耗比较的预估的未来功率消耗。
8.如权利要求1所述的方法,其中选择核心包括:如果所述GPU具有可用的额外功率余量则选择所述GPU,以及如果所述GPU没有额外功率余量则选择所述CPU。
9.如权利要求1所述的方法,其中接收指令包括:接收命令并将所述命令解析成能被独立地处理的指令。
10.如权利要求9所述的方法,还包括:将所述指令分类成必须由所述CPU处理的指令、必须由所述GPU处理的指令、以及能够由所述CPU或所述GPU处理的指令,且其中发送所述指令包括将能够由所述CPU或所述GPU处理的指令发送到所述选定的核心用于处理。
11.一种其上存储有指令的计算机可读介质,当被计算机操作时所述指令使所述计算机执行包括以下步骤的操作:
接收指令;
接收中央处理核心(CPU)和图形处理核心(GPU)的功率值;
基于所接收到的功率值从所述CPU和所述GPU当中选择核心;以及
将所述指令发送到选定的核心用于处理。
12.如权利要求11所述的介质,其中接收功率值包括:周期性地接收功率值并存储所接收到的功率值以在接收指令时使用,所述操作还包括使用周期性功率值随着时间而跟踪功率值的历史,基于所跟踪的历史来预测每个核心的未来功率值,且其中选择核心包括基于所预测的未来功率值来选择核心。
13.如权利要求11所述的介质,其中接收指令包括接收命令并将所述命令解析成能被独立地处理的指令。
14.一种装置,包括:
处理驱动器,用于接收指令;
功率控制单元,用于将中央处理核心(CPU)和图形处理核心(GPU)的功率值发送到负载平衡引擎;以及
所述负载平衡引擎,用于基于所接收到的功率值从所述CPU和所述GPU当中选择核心并将所述指令发送到选定的核心用于处理。
15.如权利要求14所述的装置,其中所述功率控制单元发送当前功率消耗值。
16.如权利要求14所述的装置,其中所述负载平衡引擎使用所接收到的功率值来确定所述CPU和所述GPU的功率预算,并通过选择具有最大功率预算的核心来选择核心。
17.一种***,包括:
中央处理核心(CPU);
图形处理核心(GPU);
存储器,用于存储软件指令和数据;
功率控制单元(PCU),用于将所述CPU和所述GPU的功率值发送到负载平衡引擎;
所述负载平衡引擎,用于将所接收到的功率值存储在所述存储器中,基于所接收到的功率值从所述CPU和所述GPU当中选择核心,并将所述指令发送到选定的核心用于处理。
18.如权利要求17所述的***,所述负载平衡引擎通过以下操作来选择核心:如果所述GPU具有可用的额外功率余量则选择所述GPU,以及如果所述GPU没有额外功率余量则选择所述CPU。
19.如权利要求17所述的***,其中所述负载平衡引擎还将所述指令分类成:必须由所述CPU处理的指令、必须由所述GPU处理的指令、以及能够由所述CPU或所述GPU处理的指令,并仅将能够由所述CPU或所述GPU处理的指令发送到所述选定的核心用于处理。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2012/024341 WO2013119226A1 (en) | 2012-02-08 | 2012-02-08 | Dynamic cpu gpu load balancing using power |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104106053A true CN104106053A (zh) | 2014-10-15 |
CN104106053B CN104106053B (zh) | 2018-12-11 |
Family
ID=48947859
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280069225.1A Active CN104106053B (zh) | 2012-02-08 | 2012-02-08 | 使用功率的动态cpu gpu负载平衡 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20140052965A1 (zh) |
EP (1) | EP2812802A4 (zh) |
JP (1) | JP6072834B2 (zh) |
CN (1) | CN104106053B (zh) |
WO (1) | WO2013119226A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461849A (zh) * | 2014-12-08 | 2015-03-25 | 东南大学 | 一种移动处理器上cpu与gpu软件功耗测量方法 |
CN104778113A (zh) * | 2015-04-10 | 2015-07-15 | 四川大学 | 一种矫正功率传感器数据的方法 |
CN106796636A (zh) * | 2014-10-25 | 2017-05-31 | 迈克菲股份有限公司 | 计算平台安全方法和装置 |
CN108694151A (zh) * | 2017-04-09 | 2018-10-23 | 英特尔公司 | 通用图形处理单元内的计算集群抢占 |
TWI641950B (zh) * | 2017-08-07 | 2018-11-21 | 上海兆芯集成電路有限公司 | 均衡裝置以及均衡方法 |
TWI770830B (zh) * | 2020-07-29 | 2022-07-11 | 美商惠普發展公司有限責任合夥企業 | 功率預算分配技術 |
CN114816029A (zh) * | 2021-01-22 | 2022-07-29 | 辉达公司 | 静态数据中心的功率平衡和配置 |
TWI775095B (zh) * | 2020-06-11 | 2022-08-21 | 香港商冠捷投資有限公司 | 顯示裝置及動態功率分配方法 |
CN116402674A (zh) * | 2023-04-03 | 2023-07-07 | 摩尔线程智能科技(北京)有限责任公司 | Gpu的命令处理方法、装置、电子设备和存储介质 |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8669990B2 (en) | 2009-12-31 | 2014-03-11 | Intel Corporation | Sharing resources between a CPU and GPU |
US9110664B2 (en) * | 2012-04-20 | 2015-08-18 | Dell Products L.P. | Secondary graphics processor control system |
EP2880622B1 (en) * | 2012-07-31 | 2020-11-04 | Intel Corporation | Hybrid rendering systems and methods |
KR102213668B1 (ko) * | 2013-09-06 | 2021-02-08 | 삼성전자주식회사 | 제너럴 퍼포즈 프로그래머블 컴퓨팅 디바이스에서의 멀티미디어 데이터 프로세싱 방법 및 그에 따른 데이터 프로세싱 시스템 |
WO2015056100A2 (en) * | 2013-10-14 | 2015-04-23 | Marvell World Trade Ltd. | Systems and methods for graphics process units power management |
US20150188765A1 (en) * | 2013-12-31 | 2015-07-02 | Microsoft Corporation | Multimode gaming server |
US10114431B2 (en) | 2013-12-31 | 2018-10-30 | Microsoft Technology Licensing, Llc | Nonhomogeneous server arrangement |
WO2015108980A1 (en) * | 2014-01-17 | 2015-07-23 | Conocophillips Company | Advanced parallel "many-core" framework for reservoir simulation |
JPWO2015151548A1 (ja) * | 2014-04-03 | 2017-04-13 | ソニー株式会社 | 電子機器および記録媒体 |
JP6363409B2 (ja) * | 2014-06-25 | 2018-07-25 | Necプラットフォームズ株式会社 | 情報処理装置の試験方法および情報処理装置 |
US9690928B2 (en) | 2014-10-25 | 2017-06-27 | Mcafee, Inc. | Computing platform security methods and apparatus |
US10073972B2 (en) | 2014-10-25 | 2018-09-11 | Mcafee, Llc | Computing platform security methods and apparatus |
US10417052B2 (en) | 2014-10-31 | 2019-09-17 | Hewlett Packard Enterprise Development Lp | Integrated heterogeneous processing units |
US10169104B2 (en) * | 2014-11-19 | 2019-01-01 | International Business Machines Corporation | Virtual computing power management |
KR102247742B1 (ko) * | 2015-04-21 | 2021-05-04 | 삼성전자주식회사 | 애플리케이션 프로세서와 시스템 온 칩 |
US10445850B2 (en) * | 2015-08-26 | 2019-10-15 | Intel Corporation | Technologies for offloading network packet processing to a GPU |
US10268714B2 (en) | 2015-10-30 | 2019-04-23 | International Business Machines Corporation | Data processing in distributed computing |
US10613611B2 (en) * | 2016-06-15 | 2020-04-07 | Intel Corporation | Current control for a multicore processor |
US10281975B2 (en) | 2016-06-23 | 2019-05-07 | Intel Corporation | Processor having accelerated user responsiveness in constrained environment |
US10452117B1 (en) * | 2016-09-22 | 2019-10-22 | Apple Inc. | Processor energy management system |
KR101862981B1 (ko) * | 2017-02-02 | 2018-05-30 | 연세대학교 산학협력단 | 명령어 기반 카운터를 통한 성능 및 전력량 예측 시스템 및 방법 |
US10551881B2 (en) | 2017-03-17 | 2020-02-04 | Microsoft Technology Licensing, Llc | Thermal management hinge |
US10409614B2 (en) * | 2017-04-24 | 2019-09-10 | Intel Corporation | Instructions having support for floating point and integer data types in the same register |
DE102017109239A1 (de) * | 2017-04-28 | 2018-10-31 | Ilnumerics Gmbh | Computerimplementiertes verfahren, computerlesbares medium und heterogenes rechnersystem |
US10474458B2 (en) | 2017-04-28 | 2019-11-12 | Intel Corporation | Instructions and logic to perform floating-point and integer operations for machine learning |
US10509449B2 (en) | 2017-07-07 | 2019-12-17 | Hewlett Packard Enterprise Development Lp | Processor power adjustment |
CN109697115B (zh) * | 2017-10-20 | 2023-06-06 | 伊姆西Ip控股有限责任公司 | 用于调度应用的方法、装置以及计算机可读介质 |
US10719120B2 (en) * | 2017-12-05 | 2020-07-21 | Facebook, Inc. | Efficient utilization of spare datacenter capacity |
WO2020036573A1 (en) | 2018-08-17 | 2020-02-20 | Hewlett-Packard Development Company, L.P. | Modifications of power allocations for graphical processing units based on usage |
US10884482B2 (en) * | 2018-08-30 | 2021-01-05 | International Business Machines Corporation | Prioritizing power delivery to processing units using historical workload information |
US10559057B2 (en) * | 2018-09-27 | 2020-02-11 | Intel Corporation | Methods and apparatus to emulate graphics processing unit instructions |
DE112020000846T5 (de) | 2019-03-15 | 2021-11-18 | Intel Corporation | Architektur für Block-Sparse-Operationen an einem systolischen Array |
US11934342B2 (en) | 2019-03-15 | 2024-03-19 | Intel Corporation | Assistance for hardware prefetch in cache access |
WO2020190814A1 (en) | 2019-03-15 | 2020-09-24 | Intel Corporation | Graphics processors and graphics processing units having dot product accumulate instruction for hybrid floating point format |
CN111754381B (zh) | 2019-03-26 | 2024-06-25 | 华为技术有限公司 | 图形渲染方法、装置和计算机可读存储介质 |
KR20210012642A (ko) * | 2019-07-26 | 2021-02-03 | 에스케이하이닉스 주식회사 | 데이터 처리 시스템 및 그 동작 방법 |
US11379269B2 (en) * | 2020-08-26 | 2022-07-05 | International Business Machines Corporation | Load balancing based on utilization percentage of CPU cores |
US11994751B1 (en) | 2020-12-30 | 2024-05-28 | Snap Inc. | Dual system on a chip eyewear |
US11947941B2 (en) | 2021-08-24 | 2024-04-02 | Red Hat, Inc. | Dynamic computation offloading to graphics processing unit |
US20230117720A1 (en) * | 2021-10-14 | 2023-04-20 | Jason Heger | Dual system on a chip eyewear |
US11997249B2 (en) * | 2021-10-14 | 2024-05-28 | Snap Inc. | Dual system on a chip eyewear |
US20230124748A1 (en) * | 2021-10-14 | 2023-04-20 | Jason Heger | Dual system on a chip eyewear |
WO2023243098A1 (ja) * | 2022-06-17 | 2023-12-21 | 日本電信電話株式会社 | アクセラレータオフロード装置、アクセラレータオフロード方法およびプログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090109230A1 (en) * | 2007-10-24 | 2009-04-30 | Howard Miller | Methods and apparatuses for load balancing between multiple processing units |
CN101650685A (zh) * | 2009-08-28 | 2010-02-17 | 曙光信息产业(北京)有限公司 | 设备能效的确定方法和装置 |
CN101820384A (zh) * | 2010-02-05 | 2010-09-01 | 浪潮(北京)电子信息产业有限公司 | 一种集群服务动态分配方法及装置 |
US20110055596A1 (en) * | 2009-09-01 | 2011-03-03 | Nvidia Corporation | Regulating power within a shared budget |
CN102117260A (zh) * | 2009-12-31 | 2011-07-06 | 英特尔公司 | 在cpu和gpu之间共享资源 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2814880B2 (ja) * | 1993-06-04 | 1998-10-27 | 日本電気株式会社 | 異なる命令特性を持つ複数のcpuによって構成される計算機システムの制御装置 |
US7143300B2 (en) * | 2001-07-25 | 2006-11-28 | Hewlett-Packard Development Company, L.P. | Automated power management system for a network of computers |
US7721118B1 (en) * | 2004-09-27 | 2010-05-18 | Nvidia Corporation | Optimizing power and performance for multi-processor graphics processing |
US20070124618A1 (en) * | 2005-11-29 | 2007-05-31 | Aguilar Maximino Jr | Optimizing power and performance using software and hardware thermal profiles |
US7694160B2 (en) * | 2006-08-31 | 2010-04-06 | Ati Technologies Ulc | Method and apparatus for optimizing power consumption in a multiprocessor environment |
US7949889B2 (en) * | 2008-01-07 | 2011-05-24 | Apple Inc. | Forced idle of a data processing system |
JP5395539B2 (ja) * | 2009-06-30 | 2014-01-22 | 株式会社東芝 | 情報処理装置 |
-
2012
- 2012-02-08 WO PCT/US2012/024341 patent/WO2013119226A1/en active Application Filing
- 2012-02-08 JP JP2014556525A patent/JP6072834B2/ja not_active Expired - Fee Related
- 2012-02-08 US US13/995,485 patent/US20140052965A1/en not_active Abandoned
- 2012-02-08 EP EP12868073.3A patent/EP2812802A4/en not_active Ceased
- 2012-02-08 CN CN201280069225.1A patent/CN104106053B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090109230A1 (en) * | 2007-10-24 | 2009-04-30 | Howard Miller | Methods and apparatuses for load balancing between multiple processing units |
CN101650685A (zh) * | 2009-08-28 | 2010-02-17 | 曙光信息产业(北京)有限公司 | 设备能效的确定方法和装置 |
US20110055596A1 (en) * | 2009-09-01 | 2011-03-03 | Nvidia Corporation | Regulating power within a shared budget |
CN102117260A (zh) * | 2009-12-31 | 2011-07-06 | 英特尔公司 | 在cpu和gpu之间共享资源 |
CN101820384A (zh) * | 2010-02-05 | 2010-09-01 | 浪潮(北京)电子信息产业有限公司 | 一种集群服务动态分配方法及装置 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106796636A (zh) * | 2014-10-25 | 2017-05-31 | 迈克菲股份有限公司 | 计算平台安全方法和装置 |
CN104461849A (zh) * | 2014-12-08 | 2015-03-25 | 东南大学 | 一种移动处理器上cpu与gpu软件功耗测量方法 |
CN104461849B (zh) * | 2014-12-08 | 2017-06-06 | 东南大学 | 一种移动处理器上cpu与gpu软件功耗测量方法 |
CN104778113A (zh) * | 2015-04-10 | 2015-07-15 | 四川大学 | 一种矫正功率传感器数据的方法 |
CN104778113B (zh) * | 2015-04-10 | 2017-11-14 | 四川大学 | 一种矫正功率传感器数据的方法 |
CN108694151A (zh) * | 2017-04-09 | 2018-10-23 | 英特尔公司 | 通用图形处理单元内的计算集群抢占 |
TWI641950B (zh) * | 2017-08-07 | 2018-11-21 | 上海兆芯集成電路有限公司 | 均衡裝置以及均衡方法 |
US10331494B2 (en) | 2017-08-07 | 2019-06-25 | Shanghai Zhaoxin Semiconductor Co., Ltd. | Balancing the loadings of accelerators |
TWI775095B (zh) * | 2020-06-11 | 2022-08-21 | 香港商冠捷投資有限公司 | 顯示裝置及動態功率分配方法 |
TWI770830B (zh) * | 2020-07-29 | 2022-07-11 | 美商惠普發展公司有限責任合夥企業 | 功率預算分配技術 |
CN114816029A (zh) * | 2021-01-22 | 2022-07-29 | 辉达公司 | 静态数据中心的功率平衡和配置 |
CN116402674A (zh) * | 2023-04-03 | 2023-07-07 | 摩尔线程智能科技(北京)有限责任公司 | Gpu的命令处理方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104106053B (zh) | 2018-12-11 |
JP6072834B2 (ja) | 2017-02-01 |
EP2812802A4 (en) | 2016-04-27 |
WO2013119226A1 (en) | 2013-08-15 |
US20140052965A1 (en) | 2014-02-20 |
JP2015509622A (ja) | 2015-03-30 |
EP2812802A1 (en) | 2014-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104106053A (zh) | 使用功率的动态cpu gpu 负载平衡 | |
CN109960395B (zh) | 资源调度方法和计算机设备 | |
CN111045814B (zh) | 资源调度方法和终端设备 | |
CN104704469B (zh) | 动态地重新平衡图形处理器资源 | |
CN103502946B (zh) | 用于动态控制到便携式计算装置的多核心处理器中的多个核心的电力的方法和*** | |
CN106465006B (zh) | 麦克风的操作方法和支持该方法的电子设备 | |
CN109684069A (zh) | 资源管理的方法及终端设备 | |
Priyantha et al. | Eers: Energy efficient responsive sleeping on mobile phones | |
CN103959197A (zh) | 降低3d工作负荷的功率 | |
CN103959198A (zh) | 降低3d工作负荷的功率 | |
TW201405422A (zh) | 於異質處理器群組間之運行時間調度技術 | |
CN104115210A (zh) | 显示控制器的电力管理 | |
CN103959199A (zh) | 用于先进先出(fifo)存储器的功率节约方法和装置 | |
CN104049967A (zh) | 暴露媒体处理特征 | |
CN115017002B (zh) | 频率预测方法和频率预测装置 | |
CN108664367A (zh) | 一种基于处理器的功耗控制方法及装置 | |
WO2019062462A1 (zh) | 应用控制方法、装置、存储介质以及电子设备 | |
CN114546511A (zh) | 插件管理方法、***及装置 | |
Cardone et al. | Activity recognition for smart city scenarios: Google play services vs. MoST facilities | |
CN105190474B (zh) | 用于功率效率分类的经应用控制的粒度 | |
Shoaib et al. | Resource consumption analysis of online activity recognition on mobile phones and smartwatches | |
Çiçek et al. | Smartphone power management based on ConvLSTM model | |
EP3779778A1 (en) | Methods and apparatus to enable dynamic processing of a predefined workload | |
CN114968540A (zh) | 一种核间迁移的频率调整方法 | |
KR102379026B1 (ko) | 전자 장치 및 이의 프로세싱 유닛의 소모 전력 산출 방법 |
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 |