確定在處理器中應保持活躍的執(zhí)行核數(shù)量的裝置及方法
【專利說明】確定在處理器中應保持活躍的執(zhí)行核數(shù)量的裝置及方法發(fā)明領域
[0001]發(fā)明領域主要涉及計算系統(tǒng),更具體而言,涉及確定在處理器中應保持活躍的執(zhí)行核數(shù)量的裝置及方法。
[0002]置量
[0003]圖1示出了示例性多核處理器100的架構。如圖1中所見,處理器包括:1)多個處理核101_1至101_N ;2)互連網絡102 ;3)末級緩存系統(tǒng)103 ;4)存儲控制器104以及I/O中樞105。每個處理核包含一個或多個用以執(zhí)行程序代碼指令的指令執(zhí)行流水線?;ミB網絡102用于將核101_1至101_N中的每一個互連至彼此以及其他元件103、104、105。末級緩存系統(tǒng)103在指令和/或數(shù)據被放至系統(tǒng)存儲器106之前用作處理器中的最后一層緩存。
[0004]存儲器控制器104從/至系統(tǒng)存儲器106讀/寫數(shù)據和指令。I/O中樞105管理處理器和“10”設備(如非易失性存儲設備和/或網絡接口)之間的通信。端口 107源自于互連網絡102以連接多個處理器,使得具有超過N核的系統(tǒng)可以被實現(xiàn)。圖形處理器108執(zhí)行圖形計算。功率管理電路109管理著處理器整體上(“封裝級”)的性能和功率狀態(tài),以及處理器中獨立單元(例如獨立核101_1至101_N、圖形處理器108等)的性能和功率狀態(tài)的各方面。為方便起見,其他具有意義的功能模塊,例如鎖相環(huán)(PLL)電路,在圖1中未被繪出。
[0005]隨著計算機系統(tǒng)的功耗開始受到關注,大多現(xiàn)今的系統(tǒng)包括精巧的功率管理功能。一種常見的構架是同時定義“性能”狀態(tài)和“功率”狀態(tài)。進入和/或離開這些狀態(tài)中的任何一個,可由,例如,功率管理電路109來進行控制。邏輯模塊的性能對應著其在設定時間周期內的工作能力。也就是說,邏輯模塊的性能狀態(tài)越高,在設定時間周期內其所做的工作就越多。這里,對于一個邏輯模塊的固定配置,決定邏輯模塊性能的主要因素是其工作的頻率。具體而言,應用于邏輯模塊的時鐘頻率越高,其性能就越高。通常,為了在更高頻率下正常工作,邏輯模塊的供電電壓也需要被提高。時鐘速度和供電電壓水平兩者可在運行時(runtime)期間,例如由功率管理電路109進行調節(jié)。
[0006]另一個可以影響邏輯模塊性能的因素是其可工作的內部單元中有多少被啟用(enabled)。例如,一種典型的圖形處理器108具有多個內部執(zhí)行核120_1至120_Z,其中的每一個都被設計為實際執(zhí)行代表計算機顯示器上所呈現(xiàn)圖像的圖形程序代碼的片段(shippets)。通常,圖形處理器108被設計成支持對應于不同數(shù)量的被啟用執(zhí)行核的不同工作配置。例如,第一種配置可將所有執(zhí)行核120_1至120_Z啟用,而另一種配置可僅將一半的核啟用。啟用核的數(shù)量也影響了處理器工作的能力,并且因此也影響其性能。因此,圖形處理器實際的“性能”是啟用核數(shù)量和應用于核的時鐘信號頻率的復雜混合。
[0007]不幸的是,邏輯模塊的功耗隨其頻率和性能而增加這一事實更加重了復雜度。
【附圖說明】
[0008]本發(fā)明是以示例而非限制附圖圖形的方式進行說明,其中相同的參考指代類似的元素,而其中:
[0009]圖1示出了一種處理器的實施例;
[0010]圖2示出了對于一種圖形處理器配置的作為頻率的函數(shù)的功耗;
[0011]圖3a示出了對于一對圖形處理器配置的作為頻率的函數(shù)的功耗;
[0012]圖3b示出了對于一對圖形處理器配置的作為功耗的函數(shù)的性能;
[0013]圖4示出了對于M種不同圖形處理器配置的作為頻率的函數(shù)的功耗;
[0014]圖5不出了一種功率管理方法。
[0015]詳細說曰月
[0016]智能功率管理的目的在于,對于單位頻率增量,以較少量的功率增加得到更多量的性能增長。就處理器而言,例如具有多個執(zhí)行核的圖形處理器,根據被啟用的執(zhí)行核的數(shù)量,該處理器基本表現(xiàn)出不同的性能/頻率對(vs.)功率的曲線。也就是說,例如,具有第一種數(shù)量的啟用執(zhí)行核的圖形處理器相比具有不同數(shù)量的啟用核的同一個處理器會表現(xiàn)出不同的性能和功率曲線。
[0017]因此有見地的功率管理會試圖將圖形處理器的性能和功率曲線定義為其啟用核的函數(shù),并且,選擇將被啟用核的數(shù)量,該數(shù)量相比具有其他啟用核數(shù)量的可選配置,會得到對于單位頻率增量以較少量功率增加得到更多量的性能增長的圖形處理器。
[0018]圖2示出了一種圖形處理器的功率對頻率曲線200。圖2中的曲線200對于任何啟用執(zhí)行核的數(shù)量是通用的。也就是說,具有特定數(shù)量啟用核的任何配置應該有一個功率對頻率的折衷,其表現(xiàn)出如圖2中所見曲線200的大體形狀。
[0019]處理器中的“性能”可假定隨頻率而縮放。這樣,縱坐標也可被視作處理器的性能。曲線200由較低頻率中的線性區(qū)201和較高頻率中的非線性區(qū)202來表征。
[0020]線性區(qū)201中的動態(tài)功耗可被近似為:
[0021]Dyn_Pwr = CV2f 式 I
[0022]其中:1)C為處理器中的總開關電容,包括啟用核的開關電容;2)V為加在圖形處理器上的供電電壓;以及,3)f為工作頻率。在一種實施例中,至少在線性區(qū)201的較低的頻率區(qū)域,供電電壓不需要隨遞增的頻率而增加。因此項V2在式I中作為常數(shù)。C也表現(xiàn)得像一個常數(shù)。因此,假設圖形處理器的活躍等級保持為常數(shù),式I基本對應于動態(tài)功率,表現(xiàn)出與頻率f的線性關系。
[0023]在非線性區(qū)202中,供電電壓V需要隨增加的頻率而增加,以支持合適的電路操作。因此,V2項表現(xiàn)得并不像是常數(shù),這進而使得式I表現(xiàn)得更像是一個非線性的多項式。并且,更高頻率所需的更高供電電壓使得“泄露功率”開始產生明顯的影響。在功率對頻率曲線200的非線性區(qū)202中,該泄露功率導致更為非線性的行為。
[0024]回想一下,所希望的是工作在對于單位頻率增量具有更高性能增益和更少功率增量的區(qū)域中,需要注意的是,線性區(qū)201相比非線性區(qū)202能更好地滿足該條件。對現(xiàn)象的考查在開始處(in onset) 203被描繪,其比較了曲線在相同頻率增量206_1和206_2下(即,頻率增量206_1等于頻率增量206_2),兩個區(qū)域201、202功耗增量204、205的變化。非線性區(qū)202中的功耗增量205比線性區(qū)201中的功耗增量204更大。對于兩個頻率增量206_1、206_2將處理器性能增量近似估算是相同的,很明顯,對于相同的性能增量,線性區(qū)201比非線性區(qū)202產生更少的功耗增量。這對應著更理想的工作區(qū)域。
[0025]圖3a示出了兩個不同圖形處理器配置的一對曲線300_1及300_2。也就是說,每一條曲線對于特定數(shù)量的啟用執(zhí)行核來表示處理器的行為,其中,每一條曲線對應著不同的啟用執(zhí)行核的數(shù)量。曲線300_1對應著更少啟用核的數(shù)量(例如,一半核被啟用)而曲線300_2對應著更多的啟用核數(shù)量,(例如,所有核被啟用)。
[0026]對比兩條曲線300_1、300_2,注意,對于相同的功耗水平,采用更多數(shù)量核的配置300_2比采用較少數(shù)量核的配置300_1具有更低的頻率。這直接源于這樣的事實,即采用更多核的配置具有更大的使用電路表面積,因此相比采用更少數(shù)量核的配置,可以在更慢的速度下做與有更少數(shù)量核的配置相同數(shù)量的工作。
[0027]這里,盡管可以說相對性能沿著任意特定曲線隨頻率而縮放,并不像圖2中的分析那樣,兩條曲線300_1、300_2之間的處理器性能順著橫坐標(功耗)比順著縱坐標(頻率)更好地被觀察。也就是說,兩條曲線300_1、300_2之間的處理器性能可被視為在相同的功耗水平下(特別是當兩條曲線在各自曲線中相同的線性或非線性區(qū)時)比在相同的頻率水平下更有可比性。值得注意的是,使用更多執(zhí)行核的曲線300_2比使用較少執(zhí)行核的曲線300_1在更高的功耗/性能下保持在線性區(qū)。這與一觀念相一致,即為了完成相同數(shù)量的工作,更多執(zhí)行核不必與較少執(zhí)行核工作得同樣快。
[0028]回想一下,所希望的是保持處理器工作在線性區(qū)而不是非線性區(qū),并且,認識到具有更多啟用執(zhí)行核的處理器配置會在更高的性能水平進入非線性區(qū),因此,這也就是為什么對于任何特定的性能水平,智能功率管理方案會基于該準則決定合適的執(zhí)行核的數(shù)量的原因。也就是說,智能功率管理方案會試圖將線性區(qū)映射到處理器被設計要支持的每一個性能狀態(tài)。針對性能狀態(tài)被選擇的線性區(qū)決定了對于該性能狀態(tài)要被啟用的執(zhí)行核的數(shù)量。
[0029