TWI342498B - Multi-processor system and performance enhancement method thereof - Google Patents

Multi-processor system and performance enhancement method thereof Download PDF

Info

Publication number
TWI342498B
TWI342498B TW096101332A TW96101332A TWI342498B TW I342498 B TWI342498 B TW I342498B TW 096101332 A TW096101332 A TW 096101332A TW 96101332 A TW96101332 A TW 96101332A TW I342498 B TWI342498 B TW I342498B
Authority
TW
Taiwan
Prior art keywords
processing
unit
processing unit
processing units
control unit
Prior art date
Application number
TW096101332A
Other languages
English (en)
Other versions
TW200830114A (en
Inventor
Shao Kang Chu
Yi Wei Chiu
Original Assignee
Asustek Comp Inc
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 Asustek Comp Inc filed Critical Asustek Comp Inc
Priority to TW096101332A priority Critical patent/TWI342498B/zh
Priority to US12/003,692 priority patent/US8010817B2/en
Publication of TW200830114A publication Critical patent/TW200830114A/zh
Application granted granted Critical
Publication of TWI342498B publication Critical patent/TWI342498B/zh

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
    • 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
    • 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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • 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)

Description

1342498
三達編號:TW3289PA ' 九、發明說明: 【發明所屬之技術領域】 本發明是有關於一種多處理器系統之技術領域,且特 別是有關於一種多處理器系統及其效能調整方法。 【先前技術】 ' 請參照第1圖,其繪示習知多處理器系統的示意圖。 ' 多處理器系統100 —般組設在電腦裝置的主機板上,且這 Φ 種多處理器系統100通常包括兩顆以上的中央處理單元 (CPU),例如:第一處理單元110及第二處理單元120, 以及分別供應電源至這些處理單元110, 120之第一電壓調 節模組(Voltage Regulator Module,VRM ) VR1 及第二電 壓調節模組VR2。 目前的電壓調節模組均能夠因應處理單元的核心電 壓準位需求來調整輸出電壓。例如,第一電壓調節模組 VR1可依據第一處理單元110中相關之接腳狀態變化而形 φ 成之動態電壓識別碼(Voltage Identification Code ’簡稱 VID ),來產生相對應之電壓(Vcorel )給第一處理單元 110。藉此,第一處理單元110處於不同運作負載時,皆 可由第一電壓調節模組VR1得到適當之電源供應,以增加 處理效能或避免無謂的功耗。相類似地,第二電壓調節模 組VR2亦以同樣方式獨立供電至第二處理單元120,遂不 贅述。 此外,市場上也開發出具備了多級工作模式之處理 5 1342498
* 三達編號:TW3289PA
' 器,可於正常模式(CO-Active)、暫停模式(Cl-Halt) ' 時脈停止模式(C2-Stop Clock)、深度睡眠模式(C3-Deep Sleep)、及超深睡眠模式(C4-Deeper Sleep)之間切換, 以因應系統負載情形來自動改變處理器的核心時脈及工 1 作電壓。甚者,許多桌上型與筆記型電腦更應用EIST (Enhanced Intel Speed-Step Technology )技術(增強型超 深睡眠技術)’來改善系統高熱及高耗電問題。其他如CPU ’ Thr〇ttling或其他電腦大廠針對CPU的相關效能調整技術 • 便不贅述。 然而眾所周知,即使在目前雙CPU或多核心處理器的 硬體水準下,能對應支援的軟體程式仍屬少見。例如遊戲 開發者礙於程式設計難度’幾乎仍全以單執行緒(single Thread)的方式來撰寫遊戲程式,造成多處理器系統ι〇〇 八會使用一顆處理單元(如第一處理單元110)來執行電 腦遊戲軟體,而未被使用的第二處理單元12〇則處於閒 置。或者,即使該些處理單元110, 120都分配到處理量相 • 當之運算資料,卻往往由於程式在寫作或編譯時並未針對 多處理器架構做最佳化處理,以至於資料間仍具有關連性 而非完全獨立。此時,第二處理單元120可能便需等待接 收第一處理單元110之輸出結果才能開始執行所負責的運 算,即該些處理單元11〇, 120無法同時完全發揮運算能 力。儘管該些處理單元110, 12〇理論上具備倍數於單處理 益之運算能力,但遭遇上述運算瓶頸時,系統整體效能的 k升仍有所调限,無法表現出預期中相較單處理器之多處 6 1342498
三達編號:TW3289PA ' 理器運算優勢。 【發明内容】 有鑑於此,本發明的目的就是在提供一種多處理器系 ^ 統及其效能調整方法,以避免多處理器系統發生負載集中 • 時的運算瓶頸,且能提升系統的總體效能(Throughput
Improvement) ° ' 根據本發明的目的,提出一種多處理器系統的效能調 φ 整方法,這個多處理器系統包括第一處理單元、及第二處 理單元。上述效能調整方法包括下述步驟:(a)偵測該些處 理單元的負載,以獲得多個相對應的偵測結果;(b)根據該 些偵測結果,判斷負載是否集中在該些處理單元之其中一 個處理單元;以及(c)若負載集中在該第一處理單元,則提 高第一處理單元的供電,或一併提高其運算能力。 在本發明之一實施例中,在步驟(c)中,更包括提高第 一處理單元的工作時脈、或内部倍頻。 φ 在本發明之一實施例中,多處理器系統更包括控制單 元、及時脈產生器,控制單元分別與該些處理單元、及時 脈產生器電性連接,且時脈產生器並分別與該些處理單元 電性連接,控制單元透過控制時脈產生器來提高第一處理 單元的工作時脈。 在本發明之一實施例中,控制單元透過内部積體電路 匯流排(I2C Bus)來控制時脈產生器,藉此控制單元便可 透過内部積體電路匯流排來提高第一處理單元的工作時 7 1342498
" 三達編號:TW3289PA - 脈。 在本發明之一實施例中,在步驟(C)中,更包括降低第 二處理單元的供電、工作時脈、内部倍頻、或電源狀態。 在本發明之一實施例中,在步驟(a)中,是利用硬體監 ' 測手段或軟體監測手段來偵測該些處理單元的負載。 - 根據本發明的目的,提出一種多處理器系統,這個多 處理器系統包括多個處理單元、時脈產生器、電源供應裝 置、多個開關單元、及控制單元。上述時脈產生器分別電 $ 性連接該些處理單元,並可分別提供工作時脈至該些處理 單元。上述電源供應裝置可分別提供該些處理單元所需之 電源。上述該些開關單元分別電性連接於電源供應裝置及 該些處理單元之間。上述控制單元分別電性連接該些處理 單元、時脈產生器、及該些開關單元,以使得控制單元可 藉由控制該些開關單元來調整該電源供應裝置提供至該 些處理單元之電源,且控制單元可藉由控制時脈產生器來 調整提供至該些處理單元之工作時脈。 φ 在本發明之一實施例中,控制單元利用硬體監測手段 或軟體監測手段來偵測該些處理單元的負載,以獲得多個 相對應的偵測結果。 在本發明之一實施例中,硬體監測手段是利用偵測單 元來實施,且偵測單元分別電性連接該些處理單元以及控 制單元。 在本發明之一實施例中,控制單元依據該些偵測結果 來判斷負載是否集中在該些處理單元之其中一個處理單 8 1342498
三達編號:TW3289PA * 元。若負載集中在該第一處理單元,則控制單元控制該些 開關單元之操作,來提高第一處理單元的供電。控制單元 亦可透過内部積體電路匯流排控制該時脈產生器,以提高 第一處理單元的工作時脈。或者,控制單元亦可提高第一 ' 處理單元的内部倍頻。 在本發明之一實施例中,該些開關單元為電晶體開 關。 在本發明之一實施例中,軟體監測手段是利用應用程 φ 式或作業系統來讀取該些處理單元之使用率。 為讓本發明之上述目的、特徵、和優點能更明顯易 懂,下文特舉較佳實施例,並配合所附圖式,作詳細說明 如下: 【實施方式】 如上所述,在第1圖中,當負載集中在第一處理單元 110時,第二處理單元120可能始終閒置或暫時以省電模 φ 式等待第一處理單元110之運算結果;而輪到負載集中於 第二處理單元120時,第一處理單元110同樣沒有對縮短 處理時間做出貢獻。亦即,在現階段缺乏支援多CPU的程 式設計下,多處理器系統100之整體效能大幅受限於這些 處理單元110, 120各別的效能表現,而未能發揮同時多工 處理以提升效能。因此,在未改變軟體設計下,提升各別 處理單元之效能可為一種改善途徑。 以第一處理單元110為例,傳統上可更換使用較高的 9 1342498
i達編號:TW3289PA CPU等級(功耗也較高)來直接提升運算能力,但 通常也需要消耗比原本處理器額定功率更高的供二' 等級的第-處理單元110才能完全以全速運作 對應之第-電壓調節模組VR1供電量不足 r多種如前述之效能調節技術也無」:二: 載的處理單元能以全电里以確保兩負 的時間。同時也無須在=二=3= 升'、及工間而預留額外電源供應能力。 系統:㈡ΓΛ,其緣示本發明較佳實施例之多處理器 ί =圖。/處理器系統包括第-處理單元⑽、
Li處4= 及偵測單元27η %脈產生器時脈產生器260、 皆為中央處理單元在m例在 處理單元210,220 說明,而改用嶋測手段來實施,有關詳細 如上且m生11 260分別電性連接該些處理單元取 至該些處分別提供工作時脈(又稱外頻) 需之置230用以提供該些處理單元所 〜模組231、及第二編節模组232,=』 1342498
二達編號:TW3289PA 壓調節模組川及第二電壓調節模組2 些處理單元风220所需之電源。值得一提的是=共= 没定下,電源供應裝置230如第丨圖所示之 刀始 壓調節模請提供電源給第一處 大:-電 壓調節模組232供電给第二處理單元⑽。210且第二電 :述開關:兀241〜244分別電性連接於電源供 〇及該些處理單元2i 〇, 22〇間。如第2圖所示 ' 關 早凡冰電性連接於第一電壓調節模組231及第 ^ 兀以〇之間,以控制第一電壓調節模組231及第一處二 70 210之間的供電路徑。開關單元243 早 ,模組232及第—處理單元21。之間,=1 $調節模組232及第一處理單元21〇之間的另一供電: 检。開關單元242, 244則利用類似開關單元241,243之電 性連接方式來分別控制電源供應裝置23〇與第二處理兒 O〇f\ v 之間的二供電路徑。藉此,電源供應裝置230產生之 電源可經由開關單元241〜244所控制之供電路徑來輪出 至該些處理單元210, 220。 控制單元250分別電性連接處理單元210, 220、時脈 產生器260、及開關單元241〜244,以使得控制單元25〇 可藉由控制開關單元241〜244來調整電源供應裝置230 提供至處理單元21〇, 220之電源,且控制單元250可藉由 控制時脈產生器260來調整提供至處理單元210, 220之工 作時脈。 也就是說,本實施所提供之控制單元250可以根據各 11
〜遷編號:TW3289PA ~理單元210, 220之負載來控制開關單元241〜244,以彈 陡凋整各處理單元21〇, 22〇所需之供電量或工作頻率,其 中控制單元250是利用硬體監測手段或軟體監測手段來偵 ’則處理單元210, 220的負載’以獲得多個相對應的偵測結 里 。有關如何偵測處理單元210, 220之負載的說明,容後 洋迷。 另外,在本實施例中,值得一提的是,控制單元25〇 了透過如内部積體電路(Inter-integrated Circuit,I2C)匯 〜排來控制時脈產生器260產生該些處理單元210, 220之 外頻時脈訊號。在其他實施例中,控制單元25〇亦可透過 其他介面來控制時脈產生器260所產生的外頻時脈訊號。 在本實施例中,開關單元241〜244以金屬氧化物半 導體場效接面電晶體(MOSFET) Q1〜Q4來實作。在其他 實施例中,開關單元241〜244亦可使用雙載子接面電晶 體(BJT)電晶體來實現,或者其他能夠利用電壓或電流 控制之電子開關。由於,以電晶體作為開關電路為一已知 的技術’在本說明書中不再贅述。 在本實施例中,控制單元250為組設於主機板之南橋 晶片(South Bridge Chip),其可控制第一處理單元210、 第二處理單元220、開關單元241〜244、及時脈產生器260 之操作。在其他實施例中,控制單元250亦可為超級輸入 輸出晶片(Super 10 Chip)或者其他等效之晶片組。 相較於習知技術,雖然於初始設定下,該些電壓調節 模組231,232同樣分別獨立供電至該些處理單元210, 1342498
三達編號:TW3289PA 220,但藉由開關單元241〜244之設計’電壓調節模組 可供電至第二處理單元220,電壓調節模組232也可供恭 至第一處理單元210。亦即,控制單元25〇可透過控制= 關單元241〜244之動作來控制電壓調節模組231,232供 電至處理單元210, 220的路徑。 ’、
例如:控制單元250可以控制開關單元243導通 (Turn-ON )’控制開關單元244關閉(Turn-Off ),使得第 二電壓調節模組232僅供電至第一處理單元210。相類似 地,控制單元250可以控制開關單元243關閉,控制開關 單元244導通’使得第二電壓調節模組232僅供電至第二 處理單元220。相類似地,控制單元250可以控制開關單 元243導通,控制開關單元244導通,使得第二電壓調節 模組232同時供電至第一處理單元210與第二處理單元 220。相類似地,控制單元250亦可控制開關單元241,242 之操作,以控制第一電壓調節模組231供電至第一處理單 元210及/或第二處理單元220的供電路徑。 如此一來二例如發生負載集中於第一處理單元21〇的 情形時,控制單九250便可因應此情形來適當控制開關單 元“丨〜2#’以將與低負載之第二處理單元22〇相對應的 電,調節模組232的輪出電源部分轉供至高負載之第一處 理單το 210。5亥些電壓調節棋組可同時供 電給第~~'處理早元21 〇,以徒得笛 得足夠電源,以全速運作寸第〜處理單元210能夠獲 由於處理單元負載越大時 其負載電流也會隨之升 13 1342498
' 三達編號:TW3289PA . 高,因此,本發明較佳實施例利用一硬體監測手段來偵測 該些處理單元210,220之負載大小’以作為控制單元250 調整多處理益系統之效能的依據。在本實施例中,硬體監 測手段可以利用偵測單元270來實施。 上述彳貞測單元270分別電性連接該些處理單元21〇, 220之電源輸入端、及控制單元250,以该測該些處理單 元210, 220之負載電流或電壓,使得控制單元Mo能夠判 斷§亥些處理單元210, 220之負載。進一步說,彳貞測單元270 φ 可以使用多個電壓調節模組231,232中的脈寬調變控制器 (PWM Controller )的工作模式或以功率放大器 (Operational Amplifier)搭配多個精密電阻實現之比較電 路來實施。例如:多處理器系統200可利用脈寬調變控制 器之工作週期訊號或阻抗元件之比較電路設計來偵測負 載電流,並將偵測結果輸出給控制單元250,以實現利用 硬體監測手段來達成監測CPU使用率。 另外’值得一提的是’目前安裝在電腦上的作業系統 φ 通常會内建有工作管理員(Task Manager)提供CPU之負 載(或稱CPU使用率(CPU milizati〇n))等資訊。此外’ 使用者也可使用自訂之應用程式(Applicati〇n,ap)藉此 來得知CPU負戴。因此’在本發明之其他實施例中,多處 理器系統200可利用一軟體監測手段來監測cpu負載,例 如:利用上述作業系統或AP來即時得知CPU使用資訊, 以判斷該些處理單元21〇, 220之負載,進而提供適當之電 源給該些處理單元21〇, 220。 14 1342498
三達編號:TW3289PA ' 舉例來說,當第一處理單元210之使用率高於第二處 理單元220之使用率達一預設值時,控制單元250便可藉 由上述CPU使用資訊來判斷出負載集中於第一處理單元 210之情形,這種情形可能是第一處理單元210執行單一 • 執行緒(Thread)特性之應用程式,或是第二處理器220 等待第一處理器210運算結果所導致。此時,控制單元250 ' 便可控制開關單元之操作,以使該些電壓調節模組231, 232從原本的初始設定改變為共同輸出大部份的電源至第 鲁 一處理單元210。 綜上所述,本發明實施例可以利用硬體監測手段或軟 體監測手段來偵測該些處理單元210, 220之負載。藉此, 控制單元250可依據該些處理單元210, 220之負載的偵測 結果來調整電源供應裝置230之供電量。在一實施例中, 控制單元250可依據該些處理單元210, 220之負載差異程 度來調整電源供應裝置230供電給該些處理單元210, 220 之供電量。例如:控制單元250依據該些處理單元210, 220 φ 之負載差異程度來調整第二電壓調節模組232輸出給第一 處理單元210及第二處理單元220之供電比例(例如:控 制單元250控制開關單元243, 244使用可被控制單元250 調整的電晶體元件Q3及Q4之導通電流大小的開關設 計),以使低負載之第二處理單元220保持最低限度之運 作,同時儘量轉移供電給第一處理單元210。 為了能夠更加理解本發明較佳實施例之效能調整的 操作,敬請一併參照第2圖及第3圖,其中第3圖繪示本 15 1342498
三達編號:TW3289PA ' 發明較佳實施例之多處理器系統的效能調整方法流程 圖。在步驟S305中,债測單元270偵測各個處理單元210, 220之負載,以產生至少一個偵測結果,偵測單元270並 將偵測結果傳送至控制單元250,其中偵測單元270可以 利用硬體監測手段或軟體監測手段來偵測處理單元210, 220之負載。 在步驟S310中,控制單元250根據偵測結果來判斷 目前的系統負載是否集中在單一處理單元。亦即,控制單 I 元250根據偵測結果來判斷第一處理單元210之負載與第 二處理單元220之負載的差值是否大於一預設值。舉例來 說,若第一處理單元210的負載大於第二處理單元220的 負載,且其負載差值大於預設值,則控制單元250判斷出 負載集中在第一處理單元210。在步驟S310中,若控制單 元250判斷系統負載沒有集中在單一處理單元,亦即系統 在正常情況下,則控制單元250維持正常操作(該些處理 單元210, 220亦可維持如初始設定)且偵測單元270繼續 φ 偵測處理單元210, 220之負載。若控制單元250判斷系統 負載集中在單一處理單元,則執行步驟S313。 在步驟S313中,控制單元250可選擇組合以下步驟 來降低低使用率的處理單元的功率消耗。這些步驟包括: 改變其他低使用率處理單元的電源狀態(Power State );使 低使用率的處理單元進入低耗電的EIST模式;以及選擇 降低上述低使用率處理單元的工作時脈或是内部倍頻。 舉例來說,處理單元210, 220的電源狀態可包括正常 16 1342498
三達編號:TW3289PA '模式(C0_Active)、暫停模式(Cl-Halt)、時脈停止模式 (C2-Stop Clock)、深度睡眠模式(C3_Deep sleep)、及超 冰睡眠模式(C4-Deeper Sleep)。在本實施例中,處理單 元210, 220的倍頻係數範圍約可在15到2〇倍。在步驟 S313中,低使用率處理單元例如為第二處理單元22〇。控 制單元250便可將第二處理單元22〇的電源狀態由C() ^ 態改成C1狀態,當然在其他實施例中,控制單元250亦 可將第二處理單兀220的電源狀態由較耗電的狀態改到其 φ 他較省電的狀態,例如:C0狀態改成C4狀態。相類似地, 控制單元250亦可將第二處理單元22〇的内部倍頻由高倍 數調整為低倍數’例如:由12倍調整到8倍。 另外,控制單元250可藉由pc匯流排來降低低使用 率處理單元的工作時脈(又稱外頻)。亦即,控制單元25〇 透過i2c匯流排來控制時脈產生器26〇,使得時脈產生器 260輸出至低使用率處理單元(例如為第二處理單元 的工作時脈降低。一般來說,處理單元21〇, 22〇的外頻可 •為 5〇、6〇、66.6、75、83.3、95、100、112、124、133、、 333 MHz等速度。因此,在上述例子中,時脈產生器㈣ 原本輸出至第一處理單元21〇的工作時脈為歷z,此 時控制單元250可控制時脈產生器260提供100MHz的工 作時脈至第二處理單元22〇。 。繼而,在步驟S315 +,控制單元藉由控制開關 早兀241〜244來分配其他低負載(低使用率)處理單元 的多餘供電至集中負載(高使用率)的處理單元。 17 丨1342498
三達編號:TW328卯A ' 原則上,發生負載集中的處理單元將優先獲得最大供 電量,而控制單元250並會視負載集中情形來控制其他負 載較低之處理單元所對應的電壓調節模組、及開關單元 241〜244,以降低輸出至對應處理單元的電源,藉此,發 ' 生負載集中的處理單元便可獲得較多的電源。如此一來, 即可確保高負載之處理單元能以全速運作來執行運算,而 縮短負載集中的時間。例如:若控制單元250判斷出負載 集中在第一處理單元210,則控制單元250可透過控制開 φ 關單元241〜244的操作來將第二電壓調節模組232所提 供的大部份電源供給第一處理單元210。 值得注意的是,在本實施例中,步驟S313算是配合 步驟S315的子流程。在執行步驟S315之前,步驟S313 是可以被選擇執行的。在其他實施例中,步驟S325、及步 驟S330亦可被選擇其中一個或成為任意組合來被執行 的,而第3圖只是顯示其中一種執行方式的組合。在其他 實施例中,步驟S315被執行後,亦可僅執行步驟S330, • 再繼續執行步驟S335。接下來,將繼續說明步驟S325、 步驟S335、及其他後續步驟。 在步驟S325中,控制單元250透過I2C匯流排來控制 時脈產生器260,使得時脈產生器260輸出至高使用率處 理單元(例如為第一處理單元210)的工作時脈提高。例 如:時脈產生器260原本輸出至第一處理單元210的工作 時脈為124 MHz,此時控制單元250控制時脈產生器260 提供133 MHz的工作時脈至第一處理單元210。 1342498
三達編號:TW3289PA • 在步驟S330中,控制單元250提高高使用率處理單 元的内部倍頻,以改善系統效能。例如:在這個例子中, 高使用率處理單元例如為第一處理單元210。控制單元250 便可將第一處理單元210的内部倍頻由低倍數調整為高倍 數,例如:由12倍調整到14倍。 - 在步驟S335中,偵測單元270繼續偵測各個處理單 元210, 220的負載,並將偵測結果輸出至控制單元250, 使得控制單元250可以判斷運算瓶頸是否已解決(步驟 I S340)。若運算瓶頸未解決,則繼續執行步驟S335。若運 算瓶頸已解決,則執行步驟S345,藉由控制單元250之控 制來恢復初始設定,繼而繼續執行步驟S305。 在其他實施例中,若運算瓶頸未解決,控制單元250 亦可判斷處理單元之間的負載差值是否大於預設值,若處 理單元之間的負載差值是小於預設值(表示負載仍有集中 情形,但較調整前有所改善),則可維持對於該些處理單 元210, 220的第一次調整後供電比例,並繼續執行步驟 φ S335。若處理單元之間的負載差值是仍大於預設值,則繼 續執行步驟S315來再次調整供電比例。例如:由偵測單 元270之偵測結果得知,集中供電給第一處理單元210後 其負載沒有減少甚至更高,控制單元250便更降低第二電 壓調節模組232供給第二處理單元220之電源,同時也更 提高第二電壓調節模組232對第一處理單元210之供電。 本發明上述實施例所揭露之多處理器系統及其效能 調整方法,係能夠彈性分配多處理器系統中各處理單元所 19 1342498
三達編號:TW3289PA ' 獲得之供電量,確保高負載的處理單元能以全速運作來執 行運算而縮短運算瓶頸的時間。 综上所述,雖然本發明已以較佳實施例揭露如上,然 其並非用以限定本發明。任何所屬技術領域中具有通常知 識者,在不脫離本發明之精神和範圍内,當可作各種之更 動與潤飾。因此,本發明之保護範圍當視後附之申請專利 範圍所界定者為準。
20 1342498
三達編號·· TW3289PA ' 【圖式簡單說明】 第1圖繪示習知多處理器系統的示意圖。 第2圖繪示本發明較佳實施例之多處理器系統之示意 圖。 第3圖繪示本發明較佳實施例之多處理器系統的效能 調整方法流程圖。 【主要元件符號說明】 φ 100、200 :多處理器系統 110、210 :第一處理單元 120、220 :第二處理單元 230 :電源供應裝置 241〜244 :開關單元 250 :控制單元 260 :時脈產生器 270 :偵測單元 φ Q1〜Q4:電晶體元件 VR1、231 :第一電壓調節模組 VR2、232 :第二電壓調節模組 S305〜S345 :步驟 21

Claims (1)

  1. 厶 *+70 十、申請專利範園·· ^〜|丨。。年丨月丨。日修正替換頁 统之夕個卢夕处理器系統的效能調整方法’該多處理器系 統之多個處理單元至少 錢里》口示 單元、第一電壓調節模組、第一第;厂=衰單二、一=處; 壓調節模組和該第二電t;電壓調卽模組,該第一電 元分別連接至該第—處理粟周即拉組分別通過多個開關單 調整方法包括下述步驟:70及該第二處理單元,該效能 測結偵4該些處理單元的負栽,以獲得多個相對應的偵 單元,rfr結果,判斷負載是否集中在該些處理 早兀之其中一個處理單元;以及 (C)若負載集中在該第_ 元來提高該第一處理單二里早::1控制該些開關單 模組及兮筮一# 的供電,其中,該第-電壓調節 、,⑷:二Γ節模組同時供電至該第-處理單元; 單元來提”第%在邊第二處理單元’則控制該些開關 弟一處理單元的供電,其中,該第一電壓調 =、,且及㈣二電壓調節模組同時供電至該第二處理單 ^如申請專利範圍第i項所述之效能調整方法, =:,更包括_[如元的工作時脈、 如申睛專利範圍第2項所述之效能調整方法,其中 栌制:里:系統更包括一控制單元、及-時脈產生器,該 ^早^別與該些處理單元、及該時脈產生器電性連 22 寸342498 . > ]〇〇年丨月】0日修正替換頁 接’且該時脈產生器並分別與該些處理單元電性連接,該 控制單元透過控制該時脈產生器來提高該第一處理單元 的工作時脈。 4’如申請專利範圍第3項所述之效能調整方法,其中 該控制單元透過一内部積體電路匯流排來控制該時脈產 生器。 5. 如申請專利範圍第2項所述之效能調整方法,其中 在該步驟⑷中,係透過—内部積體電路匯流排來提ς 一處理單元的工作時脈。 ^ 6. 如申請專利範圍第丨項所述之效能調整方法,其中 1該步驟⑷中’更包括降低該第二處理單柄供電二 時脈、内部倍頻、或電源狀態。 7. 如申5青專利範圍第1項所述之效能調整方法,其中 在該步驟(a)中,是利用一硬體監彳 、中 來侦測該些處理單元的^射H軟體監測手段 8. —種多處理器系統,包括: 多個處理單元; =產生器,分別電性連接該些處理單 知供工作時脈至該些處理單元; 卫刀另J 電源供應裝置’提供該些處理單元所需之㈣且 有一第-電壓調節模組及-第二電壓調節模組;;源 多個開關單元,分別電性連接 些處理單元之Μ ;以及 供應裂置及該 一控制單心分別電性連接該些處理單元、該時脈產 23 丄 ιυυ午1月⑴Η修正朁換貝 S關及。該m單7",以使得該控制單元可藉由控制該 1關早兀來調整該電源供應裝置提供至該些處理單元 供至該些處理單元之工作2控制該時脈產生器來調整提 關單=提該第一處理單元,則控制該些開 調==;^!供電,其中’該第-電壓 單元; 坚調卽模組同時供電至該第一處理 其中’若負載集中在該第-虛理留_ 關單元來提高該第二處理單=早:中則=該= m^^J贤电其中’該第一電壓 單:Γ,且$第二電M調節模組同時供電至該第二處理 二ΓΓ利範圍第8項所述之多處理器系統,其中 4控制早兀利用一硬體龄 T 測該些處理單元㈣⑦ 或—軟體監測手段來横 ίο如申;主轰’以獲得多個相對應的偵、測結果。 中該硬體範圍第,物 別電性連接該些二二且測單元分 二:單 該些處理單元之其中;個處理=來判斷負載是否集中在 2.如申睛專利範圍第 中該些處理單元包括一第一/理所述之夕處理器系統,其 元,若負裁集中在誃笛一未二早兀以及一第二處理單 、“ <理單元’則該控制單it控制該 24 ^342498 lL 100年丨月丨〇曰修正替換頁 二開關單元之操作,來提高該第一處理單元的供電。 中申請專利範圍第11項所述之多處理器系統,其 元,若倉澈::處早兀以及一第二處理單 時脈產夺哭集中在該第一處理單元,則該控制單元控制該 時脈產生15,以提高該第—處理單it的I作時脈。 中該^專鄉圍第13销収多處㈣系統,其 產生=早70透過-内部積體電路匯流排來控制該時脈 中^.·如中請專利範圍第11項所述之多處理器李统,宜 中該些處理單元包括一第…… 糸統八 第-在該第一處理單元,則該控制單元提高該 恧理早TL的内部倍頻。 中該此開關乾圍第8項所述之多處理器系統,其 —開關早7L為電晶體開關。 中該軟體乾圍第8項所述之多處理器系統’其 取該些處ΐ單元之又m用。一應用程式或一作業系統來讀 25
TW096101332A 2007-01-12 2007-01-12 Multi-processor system and performance enhancement method thereof TWI342498B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW096101332A TWI342498B (en) 2007-01-12 2007-01-12 Multi-processor system and performance enhancement method thereof
US12/003,692 US8010817B2 (en) 2007-01-12 2007-12-31 Multi-processor system and performance adjustment method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW096101332A TWI342498B (en) 2007-01-12 2007-01-12 Multi-processor system and performance enhancement method thereof

Publications (2)

Publication Number Publication Date
TW200830114A TW200830114A (en) 2008-07-16
TWI342498B true TWI342498B (en) 2011-05-21

Family

ID=39618677

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096101332A TWI342498B (en) 2007-01-12 2007-01-12 Multi-processor system and performance enhancement method thereof

Country Status (2)

Country Link
US (1) US8010817B2 (zh)
TW (1) TWI342498B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI470409B (zh) * 2011-09-06 2015-01-21 Intel Corp 配置功率預算給處理器的方法、設備及系統及其電腦可讀取媒體
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US8954770B2 (en) 2011-09-28 2015-02-10 Intel Corporation Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin
US9026815B2 (en) 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US9026816B2 (en) 2011-06-30 2015-05-05 Intel Corporation Method and system for determining an energy-efficient operating point of a platform
US9074947B2 (en) 2011-09-28 2015-07-07 Intel Corporation Estimating temperature of a processor core in a low power state without thermal sensor information
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US9292288B2 (en) 2013-04-11 2016-03-22 Intel Corporation Systems and methods for flag tracking in move elimination operations
US9354692B2 (en) 2011-10-27 2016-05-31 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008187774A (ja) * 2007-01-26 2008-08-14 Fujitsu Ltd 電源装置および通信機器
US8341434B2 (en) * 2008-02-26 2012-12-25 International Business Machines Corporation Optimizing voltage on a power plane using a networked voltage regulation module array
US8338988B2 (en) * 2009-04-17 2012-12-25 Lsi Corporation Adaptation of an active power supply set using an event trigger
US8527796B2 (en) 2009-08-24 2013-09-03 Intel Corporation Providing adaptive frequency control for a processor using utilization information
US8381005B2 (en) * 2009-12-18 2013-02-19 International Business Machines Corporation Processor and memory folding for managing power consumption in information processing systems
US8812879B2 (en) * 2009-12-30 2014-08-19 International Business Machines Corporation Processor voltage regulation
US8442786B2 (en) 2010-06-02 2013-05-14 Advanced Micro Devices, Inc. Flexible power reporting in a computing system
US8510582B2 (en) * 2010-07-21 2013-08-13 Advanced Micro Devices, Inc. Managing current and power in a computing system
JP5725040B2 (ja) * 2011-01-13 2015-05-27 富士通株式会社 マルチコアプロセッサシステム、およびスケジューリング方法
EP2592754B1 (en) 2011-11-09 2015-08-12 ST-Ericsson SA Multiple supply DVFS
US8886969B2 (en) * 2011-11-28 2014-11-11 Moon J. Kim Input/output device power reduction and optimization by enablement or disablement of an external circuit coupled to the input/output device
US8862909B2 (en) 2011-12-02 2014-10-14 Advanced Micro Devices, Inc. System and method for determining a power estimate for an I/O controller based on monitored activity levels and adjusting power limit of processing units by comparing the power estimate with an assigned power limit for the I/O controller
US8924758B2 (en) 2011-12-13 2014-12-30 Advanced Micro Devices, Inc. Method for SOC performance and power optimization
US8912830B2 (en) 2012-03-28 2014-12-16 Intel Corporation Method and apparatus for atomic frequency and voltage changes
US9552046B2 (en) 2012-09-21 2017-01-24 Htc Corporation Performance management methods for electronic devices with multiple central processing units
US9946319B2 (en) * 2012-11-20 2018-04-17 Advanced Micro Devices, Inc. Setting power-state limits based on performance coupling and thermal coupling between entities in a computing device
US9348407B2 (en) 2013-06-27 2016-05-24 Intel Corporation Method and apparatus for atomic frequency and voltage changes
US9588559B2 (en) 2013-12-23 2017-03-07 Intel Corporation Configurable power supplies for dynamic current sharing
US9354943B2 (en) * 2014-03-19 2016-05-31 International Business Machines Corporation Power management for multi-core processing systems
US9882383B2 (en) * 2014-12-23 2018-01-30 Intel Corporation Smart power delivery network
US9798376B2 (en) * 2015-08-03 2017-10-24 Qualcomm Incorporated Power distribution network (PDN) droop/overshoot mitigation
FR3043476B1 (fr) * 2015-11-05 2018-09-28 Dolphin Integration Systeme et procede de gestion d'alimentation
US11068018B2 (en) * 2016-10-25 2021-07-20 Dolphin Design System and method for power management of a computing system with a plurality of islands
FR3079944B1 (fr) * 2018-04-10 2021-05-21 Dolphin Integration Sa Systeme et procede de gestion d'alimentation
DE102018114209A1 (de) * 2017-07-31 2019-01-31 Taiwan Semiconductor Manufacturing Co., Ltd. Source -und-drain-struktur mit einem reduzierten kontaktwiderstand und einer verbesserten beweglichkeit
TWI748743B (zh) * 2020-11-11 2021-12-01 瑞昱半導體股份有限公司 溫度控制方法、通訊系統與控制電路

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3741953A1 (de) * 1986-12-19 1988-06-30 Nippon Telegraph & Telephone Multiprozessorsystem und verfahren zur arbeitslastverteilung bei einem solchen
JP2770760B2 (ja) 1995-01-04 1998-07-02 日本電気株式会社 電力分散マルチプロセッサ
US6263386B1 (en) * 1999-02-12 2001-07-17 Compaq Computer Corporation Computer system having condition sensing for indicating whether a processor has been installed
JP2001109729A (ja) * 1999-10-12 2001-04-20 Nec Corp マルチプロセッサシステムにおける消費電力制御装置および方法
US6191499B1 (en) * 1999-10-13 2001-02-20 International Business Machines Corporation System and method for providing voltage regulation to a multiple processor
US6574739B1 (en) * 2000-04-14 2003-06-03 Compal Electronics, Inc. Dynamic power saving by monitoring CPU utilization
WO2001086466A2 (en) * 2000-05-09 2001-11-15 Surf Communication Solutions, Ltd. Always-on access server pool
WO2002039242A1 (en) * 2000-10-31 2002-05-16 Millennial Net, Inc. Networked processing system with optimized power efficiency
US6654264B2 (en) * 2000-12-13 2003-11-25 Intel Corporation System for providing a regulated voltage with high current capability and low quiescent current
US6792553B2 (en) * 2000-12-29 2004-09-14 Hewlett-Packard Development Company, L.P. CPU power sequence for large multiprocessor systems
US6990594B2 (en) * 2001-05-02 2006-01-24 Portalplayer, Inc. Dynamic power management of devices in computer system by selecting clock generator output based on a current state and programmable policies
US7076671B2 (en) * 2002-08-12 2006-07-11 Hewlett-Packard Development Company, L.P. Managing an operating frequency of processors in a multi-processor computer system
US20050046400A1 (en) * 2003-05-21 2005-03-03 Efraim Rotem Controlling operation of a voltage supply according to the activity of a multi-core integrated circuit component or of multiple IC components
US7134031B2 (en) * 2003-08-04 2006-11-07 Arm Limited Performance control within a multi-processor system
US7085943B2 (en) * 2003-09-26 2006-08-01 Freescale Semiconductor, Inc. Method and circuitry for controlling supply voltage in a data processing system
US20050228967A1 (en) * 2004-03-16 2005-10-13 Sony Computer Entertainment Inc. Methods and apparatus for reducing power dissipation in a multi-processor system
US7925906B2 (en) * 2004-06-29 2011-04-12 Broadcom Corporation Multi-voltage multi-battery power management unit
US7430672B2 (en) * 2004-10-27 2008-09-30 Intel Corporation Method and apparatus to monitor power consumption of processor
US7337335B2 (en) * 2004-12-21 2008-02-26 Packet Digital Method and apparatus for on-demand power management
EP1715405A1 (en) * 2005-04-19 2006-10-25 STMicroelectronics S.r.l. Processing method, system and computer program product for dynamic allocation of processing tasks in a multiprocessor cluster platforms with power adjustment
US7401243B2 (en) * 2005-06-21 2008-07-15 Dell Products L.P. Demand-based dynamic clock control for transaction processors
US8040092B2 (en) * 2008-11-24 2011-10-18 GM Global Technology Operations LLC Power supply topology for a multi-processor controller in an electric traction system

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9026816B2 (en) 2011-06-30 2015-05-05 Intel Corporation Method and system for determining an energy-efficient operating point of a platform
TWI485559B (zh) * 2011-06-30 2015-05-21 Intel Corp 用於判定平臺之具能量效益操作點的方法和系統
TWI512447B (zh) * 2011-09-06 2015-12-11 Intel Corp 配置功率預算給處理器的方法、設備及系統及其電腦可讀取媒體
US9081557B2 (en) 2011-09-06 2015-07-14 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
TWI470409B (zh) * 2011-09-06 2015-01-21 Intel Corp 配置功率預算給處理器的方法、設備及系統及其電腦可讀取媒體
US8954770B2 (en) 2011-09-28 2015-02-10 Intel Corporation Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin
US9074947B2 (en) 2011-09-28 2015-07-07 Intel Corporation Estimating temperature of a processor core in a low power state without thermal sensor information
US9939879B2 (en) 2011-10-27 2018-04-10 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US10705588B2 (en) 2011-10-27 2020-07-07 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US9026815B2 (en) 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US9176565B2 (en) 2011-10-27 2015-11-03 Intel Corporation Controlling operating frequency of a core domain based on operating condition of a non-core domain of a multi-domain processor
US10248181B2 (en) 2011-10-27 2019-04-02 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US9354692B2 (en) 2011-10-27 2016-05-31 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US10037067B2 (en) 2011-10-27 2018-07-31 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US9618997B2 (en) 2011-10-31 2017-04-11 Intel Corporation Controlling a turbo mode frequency of a processor
US9471490B2 (en) 2011-10-31 2016-10-18 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US10067553B2 (en) 2011-10-31 2018-09-04 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US10474218B2 (en) 2011-10-31 2019-11-12 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US10564699B2 (en) 2011-10-31 2020-02-18 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US10613614B2 (en) 2011-10-31 2020-04-07 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US9292288B2 (en) 2013-04-11 2016-03-22 Intel Corporation Systems and methods for flag tracking in move elimination operations

Also Published As

Publication number Publication date
US20080172565A1 (en) 2008-07-17
US8010817B2 (en) 2011-08-30
TW200830114A (en) 2008-07-16

Similar Documents

Publication Publication Date Title
TWI342498B (en) Multi-processor system and performance enhancement method thereof
US11513585B1 (en) Power management for a graphics processing unit or other circuit
US8261112B2 (en) Optimizing power consumption by tracking how program runtime performance metrics respond to changes in operating frequency
TWI518586B (zh) 協同處理器與系統效能及電力管理技術
Choi et al. Fine-grained dynamic voltage and frequency scaling for precise energy and performance tradeoff based on the ratio of off-chip access to on-chip computation times
CN102314213B (zh) 动态调整工作频率的计算机系统
Ma et al. PGCapping: Exploiting power gating for power capping and core lifetime balancing in CMPs
JP5437077B2 (ja) プロセッサと電力システムとを備えるシステム及びこれの動作方法
TWI430079B (zh) 用於多處理器核心之電力管理的裝置、系統及方法
TW200304592A (en) Method and apparatus for providing multiple supply voltages for a processor
JP2004220610A (ja) データ処理性能制御方法及び装置
CN102566739A (zh) 多核处理器系统及其动态电源管理方法与控制装置
TW200834422A (en) Performance enhancement method for a multi-processing core device
US11842202B2 (en) Apparatus and method for dynamic selection of an optimal processor core for power-up and/or sleep modes
US20220058029A1 (en) Energy-efficient core voltage selection apparatus and method
TW200809628A (en) Power aware dynamic scheduling in multiprocessor system employing voltage islands
Haj-Yahya et al. Power management of modern processors
US20220391003A1 (en) Power management of a processor and a platform in active state and low power state
US20210132123A1 (en) Per-part real-time load-line measurement apparatus and method
WO2022139927A1 (en) Power and performance optimization in a memory subsystem
CN101231551B (zh) 多处理器系统及其效能调整方法
TW202226016A (zh) 安全的裝置電力啟動設備及方法
Vaddina et al. Experimental energy profiling of energy-critical embedded applications
Yahya et al. DarkGates: A Hybrid Power-Gating Architecture to Mitigate the Performance Impact of Dark-Silicon in High Performance Processors
US11954501B2 (en) Apparatus and method for restoring a password-protected endpoint device to an operational state from a low power state