向处理器的异构计算元件分配功率的制作方法_2

文档序号:8269302阅读:来源:国知局
U域和互连域的目标频率 开始(框110)。在所示出的实施例中,此互连域可以具有基于环形的互连,下面将进一步讨 论其细节。在一个实施例中,对这些目标频率的确定可以基于从处理器的各种位置接收到 的某些度量。一般而言,这些度量可以对应于图形域的繁忙度和互连域的繁忙度。即,由于 通常图形域是由CPU域(如此,它是生产者域)处理的数据的消费者,因此,使用图形域繁 忙度(以及环形域繁忙度)作为代理,可以允许确定CPU域(以及互连域)的合适的目标 频率。在所示实施例中,可以基于图形域和互连域的微架构内的各种组件或位置的活动级 另IJ,测量繁忙度。或者,在另一个实施例中,可以基于这些组件的利用率,确定繁忙度。
[0022] 仍参考图1,接下来,控制进入框120,在那里,可以将目标频率设置为下一评估间 隔的CPU域频率以及互连域频率的上限。在一个实施例中,可以通过将目标频率存储在最 大频率存储器中,诸如,例如,存在于PCU中的或与PCU相关联的配置寄存器,作出此设置。 可以设置单一目标频率,或可以设置CPU以及互连域的独立的目标频率。
[0023] 如下文所描述的,可以在下一评估间隔(例如,通过rcu)中控制这些域,以在或低 于此目标频率下操作。注意,在确定要降低目标频率时(如当CPU/互连没有被完全使用 时),在一个实施例中,降低量可以是第一量(例如,200MHz),以逐步降低目标频率。相反, 在确定要提高目标频率时(如当CPU/互连被完全使用时),在一个实施例中,增大量可以是 第二较高量(例如,500MHz),以更快速地增大目标频率。
[0024] 接下来,控制进入菱形130,在那里,可以判断CPU是否在此目标频率的防护频带 内运行(例如,在当前评估间隔中)。注意,如此,防护频带提供过滤短频率变化(例如,由 于处理器使用率的短暂的尖峰和下降)以及性能和功率状态变化(分别是P状态和C状态 变化)的度量。如此,由于这样的可能的效果,可能会产生处于分析中的时间间隔内的低于 被请求的CPU频率。通过使用防护频带来引导功率偏置更新,可以防止基于CPU频率的这 样的正常的节奏而朝CPU域增大功率偏置值太远。在一个实施例中,防护频带可以是目标 频率的预定的百分比,例如,5-10%,虽然本发明的范围在这方面不受限制。
[0025] 如果判断CPU在此防护频带内运行,则控制进入框140,在那里,可以增大与图形 域相关联的计数器。更具体而言,可以增大图形偏置滞后计数器,该计数器可以是位于处理 器的逻辑中的计数器。否则,如果CPU频率比目标频率低大于防护频带,则这是CPU频率太 低的标志,如此,没有实现从CPU到图形域的足够的吞吐量。相应地,控制进入框135,在那 里,可以增大CPU计数器,该CPU计数器可以是位于处理器的逻辑中的另一个计数器。更具 体而言,可以增大CPU偏置滞后计数器。注意,通过经由这些计数器提供滞后的度量,可以 消除偏置变化。如此,一次性异常帧发生会避免在一个方向移动偏置太远,导致总体性能减 退。
[0026] 虽然未示出,但是,在某些实施例中,还可以增大帧计数器。如此,此计数器可以提 供呈现的帧的数量的计数(如此,经由方法100的此部分的循环的数量)。然后,从框135 和140,控制进入菱形150,在那里,可以判断自从最后一次功率偏置变化以来是否消逝了 足够的时间。虽然本发明的范围在这方面不受限制,但是,在一个实施例中,此阈值时段或 时间窗口可以大致250毫秒(ms)。注意,此基于时间窗口的分析可以被用来处理具有不同 的帧速率的应用。当调整根据本发明的一个实施例的功率共享以利用低帧速率应用最佳地 运行时,由于偏置超过最佳值,可能会导致高帧速率应用中的帧速率振荡。相反,通过使用 恒定值时间窗口,可以归一化偏置变化的速率以独立于执行中的给定应用的帧速率。
[0027] 仍参考图1,如果自从最后一次功率偏置变化以来消逝了足够的时间,则控制进入 菱形160,在那里,可以判断GPU偏置滞后计数器是否超出第一阈值级别。虽然本发明的范 围在这方面不受限制,但是,在一个实施例中,此第一阈值级别可以被设置为给定计数值, 在某些实施例中,该值可以设置为2。还可以判断为其作出更大的GPU功率的确定的帧的数 量(在一个实施例中,可以等于GPU偏置计数器值)是否超出帧的第一阈值百分比。在一 个实施例中,百分比可以在分析的帧的数量的大致55%和65%之间。如此,如果GPU偏置 计数器超出阈值级别并且大于分析的帧的预定的百分比指出需要更大的图形域功率,则控 制进入框165,在那里,可以朝图形域增大功率偏置值。虽然是利用该多次判断描述的,但 是,在其他实施例中,可以只执行这些判断中的一次(例如,需要将计数与阈值或指出更大 的功率消耗级别的帧的百分比进行比较)。
[0028] 在某些实施例中,可以提供对此功率偏置值的可变增长量。然而,为便于实现,在 其他实施例中,可以实现的固定的增大值。在特定实施例中,增大可以以百分比表示,并可 以对应于,例如,在大致1-2%之间。注意,此功率偏置值可以是配置寄存器,例如,存在于 PCU中的允许PCU在不同的域之间动态地分配功率预算的配置寄存器。在某些实施例中,由 于图形域是CPU域活动的主要消费者,因此,此偏置值可以被设置为大致80-90 %之间的初 始水平,以有利于图形域,这意味着,对于在图形域和CPU域之间分配的功率预算,对应于 功率偏置值的给定百分比可以被分配给图形域。
[0029] 如果相反在菱形160判断GPU偏置滞后计数器不超出GPU(第一)阈值并且寻求 更大的GPU功率的帧的数量不超出帧的第一阈值数量,则控制进入菱形170,在那里,可以 判断CPU偏置滞后计数器是否超出第二阈值级别(在不同的实施例中,该值与第一阈值级 别相同或不同),为其作出更大的CPU功率的确定的帧的数量(在一个实施例中,可以等于 (PU偏置计数器值)是否超过帧的第二阈值百分比(在不同的实施例中,可以与帧的第一阈 值百分比相同或不同)。如果这两个判断是肯定的,则控制进入框175,在那里,可以朝核域 增大功率偏置值。否则,对于此组帧,方法结束,而不必对功率偏置值进行任何调整。尽管 在图1的实施例以这样高级别地表示,然而要理解本发明的范围不限于此方面。例如,在其 他实施例中,提供滞后的度量或对功率偏置值减少调整的某些技术可以不存在。如此,在其 他实施例中,可以消除滞后计数器、防护频带分析、时间窗口判断以及帧分析的百分比中的 一项或多项。
[0030] 作为判断的示例,假设已经消逝了 11个帧,其中六个指出需要更多CPU功率,五个 指出较少(如此,CPU偏置计数器等于6, GPU偏置计数器等于5)。还假设两个偏置计数器 阈值都被设置为2,百分比阈值被设置为60%。在这些情况下,偏置值没有发生变化,尽管 两个滞后计数器都越过两个帧阈值。这样做以减少最佳偏置点周围的振荡。
[0031] 现在参照图2,其中示出了根据本发明一实施例的处理器的一部分的框图。如图 2所示,处理器200可以包括内核模式驱动程序210。更具体而言,此驱动程序可被配置成 图形域的设备驱动程序,如此,将图形域与在处理器上执行的OS连接。可以看出,驱动程序 210可以包括功率节省逻辑215,该功率节省逻辑215可以包括各种组件,以分析处理器性 能的不同的度量(更具体而言,关于图形域),在可能时,实现功率节省。
[0032] 在所示出的实施例中,功率节省逻辑215可以包括动态频率逻辑216,该动态频率 逻辑216可以被用来基于由图形域执行的工作负荷,确定最佳核和互连频率。如此,可以看 出,逻辑216可以输出核域和互连域两者的频率的上限值。
[0033] 如图2的实施例所示,可以向rcu 230提供这些值,P⑶230可以包括各种硬件、 软件和/或固件以响应于来自功率节省逻辑215的输入以及基于其他输入,诸如由OS指示 的各种操作模式,执行功率管理操作。
[0034] 在图2中进一步可以看出,功率节省逻辑215还可以包括根据本发明的一个实施 例的智能偏置控制(IBC)逻辑218。一般而言,逻辑218可以根据上文的图1的算法操作, 以控制功率偏置值,该功率偏置值可以被传递到PCU 230。如此,此功率偏置值向PCU指出, 核域和图形域之间的共享的功率预算如何将被共享。
[0035] 仍参考图2,注意,可以响应于各种输入,执行在功率节省
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1