当前位置: 首页 > 专利查询>英特尔公司专利>正文

使用功率的动态CPU GPU负载平衡制造技术

技术编号:10539178 阅读:207 留言:0更新日期:2014-10-15 15:38
基于功率描述了动态CPU GPU负载平衡。在一个例子中,指令被接收,且中央处理核心(CPU)和图形处理核心(GPU)的功率值被接收。基于所接收到的功率值来选择CPU或GPU,且指令被发送到选定的核心用于处理。

【技术实现步骤摘要】
【国外来华专利技术】【专利摘要】基于功率描述了动态CPU?GPU负载平衡。在一个例子中,指令被接收,且中央处理核心(CPU)和图形处理核心(GPU)的功率值被接收。基于所接收到的功率值来选择CPU或GPU,且指令被发送到选定的核心用于处理。【专利说明】使用功率的动态CPU GPU负载平衡
技术介绍
发展了通用图形处理单元(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之间平衡允许平台的计算和功率资源被更有效和充分地利用。 在一些系统中,功率控制单元(P⑶)还提供功率计功能。来自功率计的值可被查 询和收集。这用于允许基于对每个可分离的动力单元的工作负载要求而分配功率。在本公 开中,功率计值用于调节工作负载要求。 功率计可用作对功率消耗的代理。功率消耗也可用作对负载的代理。高功率消耗 暗示核心是忙碌的。低功率消耗暗示核心不那么忙碌。然而,存在对低功率的明显的例外。 一个这样的例外是GPU可以是"忙碌的",因为采样器都被充分利用,但GPU仍然不充分利用 功率预算。 功率计和来自功率管理硬件(例如PCU)的其它指示可用于帮助从功率方面评估 CPU和GPU有多忙碌。中央处理核心或图形核心的评估也允许其它核心的相应余量被确定。 该数据可用于驱动使用处理平台的更多资源的有效的工作负载平衡引擎。 普遍使用的性能度量(例如忙碌和空闲状态)不提供核心的功率余量的任何指 示。使用功率度量,负载平衡引擎可允许对特定的任务更有效的核心以全频率运行以及较 不有效的核心以剩余功率运行。当任务或过程改变时,其它核心可替代地以全功率运行。 目前,一些Inter?处理器使用Turbo Boost?模式,其中处理器被允许以高得多的 时钟速度运行一段短的时间。这使处理器消耗更多的功率并产生更多的热,但如果处理器 足够快地返回到较低速度、较低功率模式,则它将被保护免受过热。使用功率计或其它功率 指示帮助确定CPU功率余量,而不减少Turbo Boost模式的使用。在Turbo Boost模式中 的GPU的情况下,GPU可被允许在期望时以其最大频率工作,且CPU可消耗剩余功率。 在CPU和GPU共享相同的功率预算的系统中,例如功率计读数的功率指示可用于 确定任务是否可卸载到CPU或GPU。对于图形处理,GPU可被允许使用大部分功率,且然后 (PU可被允许在可能时(即,当存在足够的功率余量时)进行帮助。GPU通常对图形处理任 务更有效。另一方面,CPU通常对大部分其它任务和一般任务(例如遍历树)更有效。在 这样的情况下,CPU可被允许使用大部分功率,且然后GTO可被允许在可能时进行帮助。 在图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)的功率值;基于所接收到的功率值从所述CPU和所述GPU当中选择核心;以及将所述指令发送到选定的核心用于处理。

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:U·萨雷
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1