TWI260543B - Performance scheduling method and system, and computer readable medium - Google Patents
Performance scheduling method and system, and computer readable medium Download PDFInfo
- Publication number
- TWI260543B TWI260543B TW093105593A TW93105593A TWI260543B TW I260543 B TWI260543 B TW I260543B TW 093105593 A TW093105593 A TW 093105593A TW 93105593 A TW93105593 A TW 93105593A TW I260543 B TWI260543 B TW I260543B
- Authority
- TW
- Taiwan
- Prior art keywords
- processor
- processing
- speed
- processing requirements
- requirements
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 45
- 238000012545 processing Methods 0.000 claims abstract description 181
- 239000000872 buffer Substances 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 8
- 230000004931 aggregating effect Effects 0.000 claims description 6
- 230000003139 buffering effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- 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
-
- 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
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Multi Processors (AREA)
Description
1260543 (1) 玫、發明說明 【發明所屬之技術領域】 本發明係有關於電腦系統,特別是有關於電腦的電力 消耗。 【先前技術】 電腦系統在世界上相當的流行,包括自小型手持式電 子裝置,例如個人數位助理及行動電話,至特定用途的電 子裝置’例如機上盒、數位攝影機及其他的消費性電子產 品’以至於中型的移動系統,例如筆記型電腦、次筆記型 電腦及平板電腦等,乃至桌上型電腦系統、工作站及伺服 器等的各種東西。 在過去的幾年內,半導體技術有許多的進步,造成了 具有以較高頻率運作並可提供額外及先進特性之積體電路 的改良型電子裝置的開發。雖然這些進展使得硬體製造商 得以設計及建造更快且更複雜的電腦系統,然而他們亦造 成高電力消耗的缺點,特別是對於以電池供電的電腦系統 而言。 有許多的技術已知可以減少電腦系統中的電力消耗量 。例如說,先進規劃及電力界面 (Advanced Configuration and Power Interface,ACPI)規格(西元 2 0 02年1 0月1 1日公開的第2.0b版)即設定了如何減少 手持式及其他電腦系統之動態電力消耗量的資訊。對於電 腦系統中所使用的處理器而言,在A CPI規格中設定了四 1260543 (2) 種處理器電力消耗模式(CO、Cl、C2、C3 )。例如說, 當處理器在執行指令時,其係處於C〇模式。此c〇模式 是一種高電力消耗量的模式。當處理器不執行指令或是待 機時,其可以處於低電力消耗量模式C ]、C 2、^ 3中的一 種。電腦系統中的作業系統(OS )可以動態地將待機中 的處理器轉換成適當的低電力消耗量模式。 C 1電力模式是具有最低潛時的處理器電力模式。c 2 電力模式則可提供較C 1電力模式爲佳的電力節省效果。 在C2電力模式中,處理器仍然可以維持系統快取記憶體 內存的內容。相較於C1和C2電力模式,C3電力模式可 提供更低的電力消耗量,但是具有較C 2和C 1電力模式 爲高的脫離潛時。在C3電力模式中,處理器可能無法維 持處理器快取記憶體與其他系統動作的一致性。 雖然ACPI規格及已知技術中所界定的低電力消耗量 模式具有一些優點,但是對於目前的技術而言,其仍然需 要持續的改良。 【發明內容及實施方式】 在一實施例中,其揭露一種用來建立性能設定檔的方 法及裝置。此性能設定檔可利用二項或多項任務中的二種 或多種型式的處理需求或限制來建立之。此性能設定檔可 有助於減低電力消耗量下滿足於該等處理需求。 在下面的說明中,爲方便解釋之故,會設定某些特定 的細節,以便於對本發明充份的瞭解。但是對於熟知此技 -5- 1260543 (3) 藝之人士而言,很明顯的,本發明亦可不依據這些細節來 貫施之。在其他的例子中,其係以方塊圖式和流程來顯示 已知的結構、程序和裝置,以供說明本發明的實施例,而 爲避免對於本文內容之明瞭造成不必要的干擾,他們並未 做I羊細的討論。 在本文中所用的“在…之時”一詞係用來代表事件的 暫時性特性。例如說,“事件‘ A ’是在事件< B,發生 時發生的”即可解釋爲事件A可能發生在事件B之發生 前、中或後。例如說,事件A是在事件B發生時發生的 ’如果事件A是因應事件B之發生或是因應一個標示事 件B己發生、正在發生或將發生的信號而發生的。 詳細說明內的“一實施例”、“某一實施例”、“一 些實施例”或“其他實施例”係表示針對於該等實施例所 說明的特定的特性、結構或特徵是包含在至少本發明的某 一些實施例內,但並不一定要包含在所有的實施例內。這 些不同形式表示的“一實施例”、“某一實施例”或“ 一 些實施例”並不一定通通都代表相同的實施例。 單一型式處理需求 第1圖是一方塊圖,顯示出習用電腦系統的一例。一 般而言,電腦系統1 〇〇包含有一排程器1 05 (例如說電壓 排程器)。此電腦系統1 〇〇亦包含有處理器11 〇。當處理 器110是設定成以最高可能處理器速度來運轉時(例如處 理器製造商所設定者),此處理器Π 〇的電力消耗量是相 -6- 1260543 (4) 當的高。處理器]1 〇的電力消耗量可以藉由利用 術來調整處理器1 1 〇的處理器速度而加以控制。 其一技術爲動態電壓管理(DVM )。藉由使用 理器1 1 0的性能及電力消耗量可以由排程器I ◦ 5 整。其調整作業可以在運行時間內進行。例如說 器1 1 〇不忙錄時,處理器頻率及電壓可以降低。 最高可能處理器速度爲低的處理器速度來運作 1 1 0的電力消耗量將可減低。 將處理器1 1 〇以較其最高可能處理器速度爲 來運轉時,其或許會有一些成本要付出。在處理 某一應用所需者爲低時,該應用將會失效。在處 較該應用所需者爲高時,則會產生不必要的電力 如說,在媒體播放的應用中,其應用作業會需要 1 1 0以最高的處理器速度來運轉,以提供給使用 感覺。該應用作業或許在一小段時間內是呈有作 但在較長的時段內卻是呈現無作用狀態。在使用 ,在該應用是呈無作用狀態時,處理器速度將會 是,在此應用作業變成有作用時,此降低的處理 許又會變成降得太低。 現有不同的技術可有助於對處理器1 1 〇的處 做較佳的決定。但是,這些技術均只考量單一型 需永’如桌]圖中所不。由於在決定處理器速度 單一型式的處理需求,因此此處理器速度對於單 的處理需求或許是最佳的,但是對於其他型式的 現有的技 例如說, DVM,處 來加以調 ,在處理 藉著以比 ,處理器 低的速度 器速度較 理器速度 消耗。例 該處理器 者較佳的 用狀態, DV1V[時 降低。但 器速度或 理器速度 式的處理 時僅考量 一種型式 處理需求 -7- 1260543 (5) 而§則或許不是最佳的。 在考量所有不同型式之處理需求下來決定最佳處理器 速度’是相當困難的,特別是當此處理器速度大致上不會 影響到例如使用者感覺或應用作業的可靠度。有多種的預 測性排程技術曾被提出過。這些排程技術包括,例如指定 頻率或預定的供應電壓至一應用作業的資料流圖形內的每 一項作業上,以針對給定的計算時間或通量限制,或二者 ,來將平均能量消耗量減至最少。另一種方式是使用可將 供應電壓減低至處理器能滿足處理需求所需的自動計時電 路。此方法可依據單位時間內處理資料的量而依比例動態 地調整供應電壓。不幸的是,預測性方法及自動計時電路 在應用至諸如影像及聲音處理等的多媒體應用上,通常僅 能提供次佳的性能。在使用上,預測演算法或是自動計時 電路必須要根據資料內容(例如說Μ P E G圖框的內容)來 正確地預測未來的計算上的需求。即使其預測是正確的, 此種方式仍然需要相當量額外的處理作業(因之而會有更 多的能源及電力的耗費),以期能獲致預測結果。 多種型式處理需求 第2圖是一方塊圖,顯示出根據一實施例的排程的例 子,其可處理多種型式處理需求。在此例中,電腦系統 2 0 0包含有排程器2 0 5 (例如電壓排程器)。電腦系統 2 00亦包含有許多不同的實體(Entity )。例如說,這些 實體可以是硬體、韌體、作業系統(〇 S )、高階應用等 -8- 1260543 (6) 等。每一個實體均需要有來自處理器2 ] 0的處理資源。每 一實體可以具有不的處理需求。這些處理需求可以是相同 型式的,或者是不同型式。例如說,參閱第2圖,處理需 求的不同型式包括有處理器之利用(或型式1 ) 2 2 0、期 限基準(或型式2 ) 2 2 5、緩衝器位準(或型式3 ) 2 3 0、 速度基準(或型式4 ) 2 3 5。雖然本文中未多加說明,但 是除了處理需求2 2 0 -2 3 5以外,本發明的實施例亦可包含 有其他型式的處理需求。 在一實施例中,排程器205可以同時使用不同型式的 處理需求22 0 -2 3 5,以構成性能設定檔。此排程器205必 須要瞭解這些不同型式的處理需求,並且必須具有一種能 將他們加以合倂或混同成單一個合倂的處理需求。例如說 ,排程器2 05必須要能調和與緩衝器位準處理需求、速度 基準處理需求、利用處理需求、期限基準技術等有關的處 理需求成爲一個聚合。此性能設定檔會影響到不同型式的 處理需求將如何被滿足,以及必須要配置多少的處理資源 。在一實施例中,性能設定檔可以包含有可進行性能調諧 的資訊。例如說,依據處理需求的不同,性能設定檔可以 包含有一項或多項有關於通訊頻寬、記憶體匯流排速度、 記憶體匯流排寬度、處理器速度等的資訊。 相關於處理需求的處理器速度 在一實施例中,每一處理需求均可能與所需的處理器 速度有關。所需的處理器速度可以由實體(例如硬體、韌 冬 1260543 (7) 體、〇 s、應用軟體等)來加以設定。所需的處理器速度 亦可由該等實體之外的外部來源來加以設定(例如由使用 者或其它的應用作業來加以設定)。 在一實施例中,處理器利用的處理需求是與處理器 2 1 0在所給定之時間視窗(T i m e W i n d 〇 w )內的利用程度 有關。例如說,依該處理器2 1 0被利用的程度(例如忙碌 或閒置)而定,處理器的速度可以降低或升高。 在一實施例中,期限基準處理需求是與所預期之工作 量在期限前的完成有關。例如說,處理器2 1 0所需有的處 理器速度可以由下式來加以估算: 處理器速度=工作量/可用來完成工作的時間長度 例如說在媒體播放的應用中,可以設定必須要在給定 時間週期內完成的圖框率(其可轉換成週期率及圖框期限 )及單圖框循環數(各個圖框的或是全部圖框的),並使 用之來估算所需的處理器速度。但是,在給定的時間週期 (或期限)內,圖框率未被滿足時,排程器2 0 5 (例如電 壓排程器)可以增加處理器2 1 0的處理器速度。這將有助 於滿足給定時間週期內的期限基準處理需求。期限基準處 理需求可以使用在時間重要(Time Critical )應用中。 在一實施例中,緩衝器位準處理需求是與某一特定實 體所用之一個或多個輸入和輸出緩衝器的位準有關。例如 說,在視訊解碼的應用中,當輸出緩衝器已塡滿輸出視訊 圖框時,處理器2 1 0的處理器速度將可減慢(而該應用會 運作地較慢些)’因爲短期內不會需要更多的輸出視訊圖 -10 - 1260543 (8) 框。另一個例子是,在加密檔複製的應用中,其中速度限 制的因素是通訊頻道,處理器2 1 0的處理器速度可以由通 訊緩衝器塡滿的程度來加以控制。在將資料自該緩衝器傳 出上,當緩衝器已滿時,處理器可以較低的處理器速度來 運作。當緩衝器空的時候,處理器可以較快的處理器速度 運作。緩衝器位準處理需求亦可使用在時間重要應用中。 在一實施例中,速度基準處理需求是與得到固定的處 理速度有關,而與諸如例如期限、緩衝器位準或處理器利 用等其他處理需求無關。例如說,即使處理器2 1 0可以較 高之處理器速度運作,編譯實體(或應用)也可以設定其 需要某種“每秒循環數”平均値(例如相當於2 0 0 Μ Η z的 處理器速度)。編譯實體本身可能沒有相關的期限處理需 求’但是可能會需要有穩定速度的進展處理需求。此項資 訊在不將處理器2 1 0推高至可能會造成不必要電力消耗量 之速度下’對於讓電腦系統2 0 0能配置足夠的處理器資源 給編譯實體以得到進展及避免資源缺乏上,是相當有用的 。速度基準處理需求可以使用在非時間(Non-time Critical )重要的應用上。 應注意到’電腦系統2 〇 〇內有許多的實體可能會具有 “無法識別”或者根本就沒有處理需求。在一實施例中, 在沒有處理需求的情形下,排程器2 0 5就必須使用預設的 處理需求。例如說,排程器2 〇 5可以假設該實體係爲低運 算實體’其處理需求係爲時段短及處理器利用量低。因此 之故’排程器2 〇 5即可將處理器2〗〇的處理器速度設定成 -11 - 1260543 (9) 以低速運作。 第3 A圖、第3 B圖、第3 C圖顯示出根據某一實施例 的不同處理需求的方塊圖形。如上所述,電腦系統2 00所 接收到的每一項處理需求均可能與處理器速度有關。舉例 來說’電腦系統2 0 0可能是正在處理三項不同的任務(應 用)。每一項任務均具有不同型式的處理需求。如第3 A 圖中的方塊圖形例子所顯示的,第一項任務(“ A ” )具 有第一種型式的處理需求,其係與所需的1 〇 〇 Μ Η z處理器 速度(速度 A )有關。在此例中,第一項任務(“ A ”)包含有次任務A1-A5。第一項處理需求是一項速度基 準的處理需求,其需要維持1 00MHz的處理器速度。如第 3 B圖中之方塊圖形例子所顯示的,第二項任務(“ b ” ) 具有第二種型式的處理需求,其係與所需的1 2 5 Μ Η z處理 器速度(速度“ Β ” )有關。在此例中,第二項任務(“ Β ” )包含有次任務Β 1- Β 5。第二項處理需求是一項期限 基準的處理需求。只要次任務Β 1 -Β 5能在期限前完成,則 任務“ Β ”的處理需求即可視爲已滿足。 如第3 C圖中的方塊圖形例子所顯示的,第三項任務 (“ C ” )具有第三種型式的處理需求,其係與所需的 2 0 0MHz處理器速度(速度“ C” )有關。在此例中,第 三項任務(“ C ’’ )包含有次任務C 1 _ C 3。第三項處理需 求是一項緩衝器位準處理需求。此第三項任務“ C ”的處 理需求係需要在夠長之時間內具有200MHz的處理器速度 ,以供將緩衝器塡滿(次任務C I ),但是在緩衝器要再 -12 - 1260543 (10) 次塡充(次任務C2 )之前,則不需要太快的處理器速度 聚合多種處理器速度 在一實施例中,與不同處理需求相關的處理器速度可 用來構成性能設定檔,包括形成有效的處理器速度,以滿 足所有不同型式的處理需求。在一實施例中,這包括有將 與每一種不同處理需求相關的處理器速度相聚合,而構成 處理器210的有效處理器速度。第4圖是一方塊圖形,顯 示出,在某一實施例中,將與不同處理需求相關的處理器 速度加以聚合起來的例子。在一實施例中,與任務“ A ” 、“ B ” 、 “ C ”之處理需求相關的處理器速度係加總在 一起,以形成整體處理器速度的估算値: 處理器速度二“速度A” + “速度B” + “速度C” 參閱第4圖,所顯示出的聚合有效處理器速度是約爲 425MHz (1〇〇 + 125+200)。因此,在此例中,當處理器 210係設定爲以42 5MHz的有效速度運轉時,其可以滿足 任務“ A,’ 、 “ β,’ 、 “ C ”的處理需求。此外,這些處理 需求係可以在不將處理器2 1 0設定成其可能的最高處理器 迷度下即可得到滿足。追將有助於減低任何不必要的電力 消耗。 可以注意到,其他的技術亦可用來將與不同型式處理 需求相關的處理器速度加以合倂而構成有效處理器速度。 例如說,其可以應用一演算法來處理不同型式處理需求間 - 13- 1260543 (11) 的跨演算法效應。此外,雖然前述的技術是用來決定有效 的處理器速度,但是熟知此技藝之人士當可瞭解到,其亦 可用來決定其他與性能相關的因素。例如說,其可以利用 該等多種型式處理需求來決定電腦系統2 0 0的熱性質、冷 卻性質等等。 參閱第4圖中所示的例子,聚合的4 2 5 Μ Η z有效處理 器速度在某些時間時可能會超過所必須者。例如說,在時 間U時,此處理器速度足以滿足任務“ a” 、 “ β,,、 “ C ’’的所有處理需求。但是,在時間t2和13時,此處理 器速度卻超過所需要的,會造成不必要的電力消耗。 根據處理需求來安排工作負荷 第5圖是一方塊圖形,顯示出在一實施例中根據處理 求米女排任務的例子。在第3圖所不的例子中,其並不 在意有多少處理資源被配置給任務“ B ”的期限處理需求 ’只要該期限能被滿足即可。因此,在比該期限更早的時 間即滿足任務“ B”的處理需求並不一定是有利的。
在一實施例中,爲能在滿足不同的處理需求下進一步 減少電力消耗量,其可將聚合的處理器速度(在此例中爲 42 5MHz )加以降低,只要所有任務的所有處理需求均能 滿足即可。由於降低處理器速度之故,因此其會使用較長 的時間來滿足某些的處理需求,但是電腦系統2 0 〇的電力 消耗量卻可減低。如第5圖中所示,其會需要電腦系統 2 0 0使用較長的時間來滿足任務“ a ” 、 “ B -14 - 1260543 (12) 一項或多項處理需求,但這些任務的處理需求可以在較低 的處理器速度下滿足。在此例中,處理器速度可以自 4 2 5 MHz減低至200MHz。請注意在第5圖的圖形中,其 方塊會變成較長,但是較矮,可是仍維持每一方塊的面積 (與第4圖內者相比較)。 聚合程序 第6圖是流程圖,顯不出在一實施例中,用來決定性 能設定檔之程序的例子。在方塊6 0 5中,其接收到二項或 多項處理需求。這些處理需求可能具有不同的型式。例如 說其中一些可能是屬於速度基準型的,而其他的則是期限 基準型的。在方塊6 1 0中,這些處理需求被用來構成性能 設定檔。如前面所述,這包括有決定出相關於每一處理需 求的處理器速度。在方塊6 1 5中,電腦系統2 0 0使用該性 能設定檔來滿足該等處理需求。這包括有例如設定處理器 速度、通訊頻寬、記憶體匯流排等等,以供處理該等處理 需求。 第7圖是流程圖,顯不出在一實施例中,用來決定聚 合處理器速度之程序的例子。在方塊7 0 5中,其接收到二 項或多項處理需求。這些處理需求可以具有不同的型式。 每一項處理需求均與一實體或任務(例如應用)有關。在 方塊7]0中,其會決定與每一處理需求有關的所需處理器 速度。如前所述,此一所需的處理器速度可由該實體加以 設定,或者其可以由例如該實體以外之來源針對該實體加 -15- 1260543 (13) 以決定。 在方塊7 1 5中,該等個別的所 處理器2 0 0的有效處理器速度。在 器2 0 0設定成以該有效處理器速度 序係顯示在第4圖的方塊圖式例子 序可以藉由將該等任務安排成使他 的處理器速度下滿足,而進一步增 的方塊圖形例子中。 前述之技術的一項優點在於他 接納來自不同任務(或實體)的不 能接納單一種處理需求,而犧牲其 ,在通用型的視訊播放裝置中,例 (例如TiVo或ReplayTV ),設計 理需求應用在該視訊記錄器上、將 在背景系統維持任務上、將期限基 使用者界面上、將利用處理需求應 設計時不知道的“無法識別”任務 的處理需求來做爲所有不同型式的 較不合於需求,因爲所有的應用的 效的滿足。 電腦系統及電腦可讀媒體 這些方法可由電腦系統內的處 可執行儲存在被視爲機器可讀儲存 需處理器速度會聚合成 方塊7 2 0中,其將處理 來運作。第7圖中的程 內。可以注意到,此程 們的處理需求能在較低 進之。這顯示在第5圖 們可使得電腦系統能夠 同處理需求,而不是僅 他的處理需求。例如說 如機上數位視訊記錄器 者即可將緩衝器位準處 速度基準處理需求應用 準處理需求應用在螢幕 用在較少見或是在系統 上。在僅使用〜種型式 處理需求時,其結果會 處理需求可能無法都有 理器來加以實施之,其 媒k之憶體內的電腦 >16- 1260543 (14) 程式指令序列。此記憶體可以是隨意出入記憶體、唯讀記 憶體、諸如大量儲存裝置之類的持續性儲存記憶體、或是 這些裝置的組合。這些指令序列的執行會使得處理器能根 據例如第6圖和第7圖中所述的程序來進行作業。 這些指令可以自儲存裝置或是一個或多個其他的電腦 系統(例如伺服電腦系統)經由網路聯結而載入至此電腦 系統的記億體內。這些指令可以同時儲存在數個儲存裝置 內(例如DRAM和硬碟,例如虛擬記憶體)。因此,這 些指令的執行可以由處理器來直接實施之。在其他的情形 中,這些指令可能不能直接執行,或者他們可能是無法由 處理器直接執行者。在這些情形下,這些執行動作可以經 由處理器執行可解譯該等指令之解譯器而執行之,或者經 由處理器執行能將所接收到之指令轉換成可由處理器直接 執行之的編譯器而執行之。在其他的實施例中,其在實施 本發明上,係使用硬佈線電路來取代軟體指令的,或是合 倂使用二者。因此,本發明並不僅限於任何特定的硬體電 路和軟體的組合’也不限於可由電腦系統來加以執行的指 令的特定來源。 由前述的說明及圖式,具有此技藝一般技術之人士當 可瞭解到,本文中所示及說明的特定實施例僅係供示範之 用而已,而不是用據以限制本發明的範圍。具有此技藝中 一般技術之人士當可認知到,本發明亦可在不脫離其精神 或基本特性下’以其他的形式來實施之。例如說,本發明 的實施例可以應用在一種具有多個虛擬機器,且每一機器 -17 - 1260543 (15) 均可處理多種型式之處理需求的虛擬機器環境內。同樣的 ,雖然排程器2 0 5是顯示成一種單獨旳實體,但其亦可以 〇 S、基本輸出入系統(B I 0 S )、韌體或其等的組合等來 實施之°對於特定實施例之細節的引述部份並非是要用來 限制本案申請專利範圍的範疇。 【圖式簡單說明】 第1圖是方塊圖5顯示出習用電腦系統的例子。 第2圖是方塊圖,顯示出在一實施例中可用以處理多 種型式處理需求的排程器。 桌jA圖、桌jB圖、桌3C圖顯示出一實施例中的不 同處理需求的方塊圖形例子。 第4圖是方塊圖,顯示出在一實施例中,將與不同處 理需求有關的處理器速度加以聚合的例子。 第5圖是方塊圖,顯示出在一實施例中,根據任務的 處理需求來安任務的例子。 第6圖是流程圖,顯示出在一實施例中用來決定性能 設定檔的程序的例子。 第7圖是流程圖,顯示出在一實施例中用來決定聚合 處理器速度的程序的例子。 兀件符號表 100 電腦系統 105 排程器 -18- 1260543 (16)
1 1 0 處 理 器 200 電 腦 系 統 205 排 程 器 2 10 處 理 器 220 型 式 1 處 理 而 求 225 型 式 2 處 理 而 求 23 0 型 式 3 處 理 iE^r 而 求 23 5 型 式 4 處 理 而 求
-19 -
Claims (1)
1260543 拾、申請專利範圍 1 ·〜種使用多限制之性能排程方法,包含有: ί吏用二項或多項任務的處理需求來建立系統的性能設 定彳當’其中至少有二項任務具有不同型式的處理需求,且 其Φ該1生能設定檔是建構成能夠容納該等二項或多項任務 的處理需求。 2 ·根據申請專利範圍第1項之方法,其中該等處理需 求包含有與完成期限有關的處理需求。 3 .根據申請專利範圍第1項之方法,其中該等處理需 求包含有與所需之處理速度有關的處理需求。 4 ·根據申請專利範圍第1項之方法,其中該等處理需 求包含有與輸入或輸出資料流的緩衝有關的處理需求。 5 ·根據申請專利範圍第1項之方法,其中該性能設定 檔包含有該系統內之處理器的速度。 6 ·根據申請專利範圍第5項之方法,其中該性能設定 檔可影響該系統所消耗的電力。 7 •根據申請專利範圍第5項之方法,其中該處理器的 速度係低於或等於該處理器的最高可能速度。 8 ·根據申請專利範圍第1項之方法,其中該使用二項 或多項任務的處理需求來建立系統的性能設定檔的步驟包 含有: 決定與該等處理需求之每一者相關的所需處理器速度 9.根據申請專利範圍第8項之方法,進一步包含有將 -20- 1260543 (2) 與該等處理需求之每一者相關的所需處理器速度加以聚合 而形成該系統的第一處理器速度。 10.根據申請專利範圍第9項之方法,進一步包含有 將該二項或多項任務加以安排成可使得在該系統設定成以 第二處理器速度運作時即可滿足其等的處理需求,該第二 處理器速度係較該第一處理器速度爲慢。 1 1 .根據申請專利範圍第】項之方法,其中該等處理 需求中的一個或多個是由相關的任務所提供的。 1 2 .根據申請專利範圍第1 1項之方法,其中該等處理 需求中的一個或多個是由相關任務之外的來源加以設定的 〇 1 3 · —種其上儲存著可一系統加以執行之指令序列之 電腦可讀媒體,且在由該系統加以執行時,可使該系統來 實行一種方法,其包含有: 使用二項或多項任務的處理需求來建立系統的性能設 定檔’其中至少有二項任務具有不同型式的處理需求,且 其中該性能設定檔是建構成能夠容納該等二項或多項任務 的處理需求。 1 4 ·根據申請專利範圍第1 3項之電腦可讀媒體,其中 該等處理需求包含有與完成期限有關的處理需求。 1 5 .根據申請專利範圍第1 3項之電腦可讀媒體,其中 §亥#處理需求包含有與所需之處理速度有關的處理需求。 1 6 .根據申請專利範圍第1 3項之電腦可讀媒體,其中 S亥寺處理需永包含有與輸入或輸出資料流的緩衝有關的處 -21 - 1260543 (3) 理需求。 ]7 .根據申請專利範圍第1 3項之電腦可讀媒體,其中 該性能設定檔包含有該系統內之處理器的速度。 】8 .根據申請專利範圍第1 7項之電腦可讀媒體,其中 該性能設定檔可影響該系統所消耗的電力。 】9 .根據申請專利範圍第1 7項之電腦可讀媒體,其中 該處理器的速度係低於或等於該處理器的最高可能速度。 2 0 .根據申請專利範圍第1 3項之電腦可讀媒體,其中 該使用二項或多項任務的處理需求來建立系統的性能設定 檔的步驟包含有: 決定與該等處理需求之每一者相關的所需處理器速度 〇 2 1 ·根據申請專利範圍第2 0項之電腦可讀媒體,進一 步包含有將與該等處理需求之每一者相關的所需處理器速 度加以聚合而形成該系統的第一處理器速度。 2 2 .根據申請專利軔圍弟2 1項之電腦可讀媒體,進一. 步包含有將該二項或多項任務加以安排成可使得在該系統 設定成以第二處理器速度運作時即可滿足其等的處理需求 ,該第二處理器速度係較該第〜處理器速度爲慢。 2 3 .根據申請專利範圍第】3項之電腦可讀媒體,其中 該等處理需求中的一個或多個是由相關的任務所提供的。 2 4 .根據申請專利範圍第2 3項之電腦可讀媒體,其中 該等處理需求中的一個或多個是由相關任務之外的來源加 以設定的。 1260543 (4) 2 5 . —種使用多限制之性能排程系統,包含有: 一處理器; 一排程器,耦合至該處理器,該排程器係用來建立性 能設定檔,以處理二項或多項任務的二種或多種不同型式 處理需求,該性能設定檔內包含有該處理器的處理器速度 G 2 6 ·根據申請專利範圍第2 5項之系統,其中該等二種 或多種不同型式處理需求包括有時間重要處理需求和時間 不重要處理需求。 27·根據申請專利範圍第25項之系統,其中該排程器 係用來將不同型式之處理需求合倂成一個處理需求。 2 8.根據申請專利範圍第27項之系統,其中該排程器 係用來藉由決定與該等不同型式處理需求之每一者相關的 處理器速度而將不同型式之處理需求加以合倂成一個處理 斋求。 2 9 .根據申請專利範圍第2 8項之系統,其中該排程器 係用來藉由使用與該等不同型式處理需求之每一者相關的 處理器速度而形成一個聚合的處理器速度。 3 0 . —種使用多限制之性能排程方法,包含有下列步 驟: 接收第一應用的第一處理需求和第二應用的第二處理 需求,其中該第一應用的處理需求係不同於該第二應用的 處理需求; 利用該第一處理需求和第二處理需求而形成第三處理 -23- 1260543 (5) 需求;以及 利用該第三處理需求來建立一性能設定檔。 3 1 .根據申請專利範圍第3 0項之方法,其中該第一處 理需求係由該第一應用加以設定的。. 3 2 .根據申請專利範圍第3 0項之方法,其中該第一處 理需求係由該第一應用以外的來源加以設定的。 3 3 .根據申請專利範圍第3 0項之方法’其中該使用第 三處理需求來建立性能設定檔的步驟包含有決定與第一處 理需求相關的第一處理器速度,以及與第二處理需求相關 的第二處理器速度。 3 4.根據申請專利範圍第33項之方法,其中該使用第 二處理需求來建立性能設定檔的步驟進一步將第一處理器 速度和第二處理器速度加以聚合而形成第三處理器速度。 35. 根據申請專利範圍第34項之方法,進一步包含有 以設定在第三處理器速度上運作的該處理器來處理該 第一應用和第二應用。 36. 根據申請專利範圍第35項之方法,其中在與一個 比該第三處理器速度爲快的速度相比較下,該第三處理器 速度係可使得其能在較少的處理器閒置時間下來處理該第 一應用和第二應用。 3 7 . —種使用多限制之性能排程系統,包含有: 一處理器; --電壓排程器,耦合至該處理器,該電壓排程器係可 - 24- 1260543 (6) 接收至少一個時間重要處理需求和至少一個時間不重要處 理需求,其中該電壓排程器係可在考量該時間重要處理需 求和時間不重要處理需求下來決定該處理器的處理器速度 〇 3 8 .根據申請專利範圍第3 7項之系統,其中該處理器 速度係小於該處理器的最高可能處理器速度。 3 9 .根據申請專利範圍第3 7項之系統,其中該時間重 要處理需求係與第一任務有關,而該時間不重要處理需求 係與第—任務有關。 4 0 .根據申請專利範圍第3 7項之系統,其中該電壓排 程器可藉由將時間重要處理需求和時間不重要處理需求加 以混合而決定該處理器的處理器速度。 4 1 .根據申請專利範圍第4 0項之系統,其中該電壓排 程器係藉由決定該時間重要處理需求的處理器速度和該時 間不重要處理需求的處理器速度而來將時間重要處理需求 和時間不重要處理需求加以混合。 4 2.根據申請專利範圍第41項之系統,其中該電壓排 程器係可將該時間重要處理需求的處理器速度與該時間不 重要處理需求的處理器速度加以聚合而形成該處理器的處 理器速度。 43.根據申請專利範圍第42項之系統,其中該處理器 的處理器速度是要在比較快之處理器速度消耗較少電力的 情形下來考量時間重要處理需求和時間不重要處理需求。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/411,818 US20040205757A1 (en) | 2003-04-09 | 2003-04-09 | Performance scheduling using multiple constraints |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200426688A TW200426688A (en) | 2004-12-01 |
TWI260543B true TWI260543B (en) | 2006-08-21 |
Family
ID=33131081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW093105593A TWI260543B (en) | 2003-04-09 | 2004-03-03 | Performance scheduling method and system, and computer readable medium |
Country Status (6)
Country | Link |
---|---|
US (1) | US20040205757A1 (zh) |
EP (1) | EP1627291A2 (zh) |
JP (1) | JP2006522384A (zh) |
CN (1) | CN100432894C (zh) |
TW (1) | TWI260543B (zh) |
WO (1) | WO2004095248A2 (zh) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006178854A (ja) * | 2004-12-24 | 2006-07-06 | Toshiba Corp | 電子回路 |
JP4476876B2 (ja) * | 2005-06-10 | 2010-06-09 | 三菱電機株式会社 | 並列計算装置 |
US8281123B2 (en) * | 2006-03-24 | 2012-10-02 | Intel Corporation | Apparatus and method for managing and protecting information during use of semi-trusted interfaces |
US20080126761A1 (en) * | 2006-09-26 | 2008-05-29 | Fontenot Nathan D | Method and apparatus for scheduling optimization |
US8255915B1 (en) * | 2006-10-31 | 2012-08-28 | Hewlett-Packard Development Company, L.P. | Workload management for computer system with container hierarchy and workload-group policies |
GB2444518A (en) | 2006-12-07 | 2008-06-11 | Symbian Software Ltd | Process priority profiles in a computer system |
US8869152B1 (en) * | 2007-01-11 | 2014-10-21 | Marvell International Ltd. | Methods and procedures to dynamically adjust processor frequency |
JP4752767B2 (ja) * | 2007-01-12 | 2011-08-17 | 日本電気株式会社 | システム構成候補導出装置、方法およびプログラム |
US8495403B2 (en) | 2008-12-31 | 2013-07-23 | Intel Corporation | Platform and processor power management |
JP2010218445A (ja) * | 2009-03-18 | 2010-09-30 | Toshiba Corp | マルチコアプロセッサシステム、スケジューリング方法およびスケジューラプログラム |
US8700926B2 (en) * | 2010-01-11 | 2014-04-15 | Qualcomm Incorporated | System and method of tuning a dynamic clock and voltage switching algorithm based on workload requests |
CN101834320B (zh) * | 2010-04-07 | 2012-02-15 | 清华大学 | 电池调度方法和装置 |
US20120042313A1 (en) * | 2010-08-13 | 2012-02-16 | Weng-Hang Tam | System having tunable performance, and associated method |
US8572421B2 (en) * | 2011-04-05 | 2013-10-29 | Apple Inc. | Adjusting device performance based on processing profiles |
US9223387B2 (en) * | 2011-06-02 | 2015-12-29 | Intel Corporation | Rescheduling active display tasks to minimize overlapping with active platform tasks |
US9310872B2 (en) * | 2013-02-01 | 2016-04-12 | Nvidia Corporation | Processor frequency mainly depending on a target frame rate while processing a graphics application |
US9600058B2 (en) * | 2014-06-24 | 2017-03-21 | Intel Corporation | Enhancing power-performance efficiency in a computer system when bursts of activity occurs when operating in low power |
EP3062142B1 (en) | 2015-02-26 | 2018-10-03 | Nokia Technologies OY | Apparatus for a near-eye display |
US10996984B1 (en) * | 2016-11-28 | 2021-05-04 | Amazon Technologies, Inc. | Batch job execution using compute instances |
US10650552B2 (en) | 2016-12-29 | 2020-05-12 | Magic Leap, Inc. | Systems and methods for augmented reality |
EP3343267B1 (en) | 2016-12-30 | 2024-01-24 | Magic Leap, Inc. | Polychromatic light out-coupling apparatus, near-eye displays comprising the same, and method of out-coupling polychromatic light |
US10578870B2 (en) | 2017-07-26 | 2020-03-03 | Magic Leap, Inc. | Exit pupil expander |
CN111448497B (zh) | 2017-12-10 | 2023-08-04 | 奇跃公司 | 光波导上的抗反射涂层 |
CN115826240A (zh) | 2017-12-20 | 2023-03-21 | 奇跃公司 | 用于增强现实观看设备的插入件 |
CN112136152A (zh) | 2018-03-15 | 2020-12-25 | 奇跃公司 | 由观看设备的部件变形导致的图像校正 |
US11885871B2 (en) | 2018-05-31 | 2024-01-30 | Magic Leap, Inc. | Radar head pose localization |
US11579441B2 (en) | 2018-07-02 | 2023-02-14 | Magic Leap, Inc. | Pixel intensity modulation using modifying gain values |
US11510027B2 (en) | 2018-07-03 | 2022-11-22 | Magic Leap, Inc. | Systems and methods for virtual and augmented reality |
WO2020023543A1 (en) | 2018-07-24 | 2020-01-30 | Magic Leap, Inc. | Viewing device with dust seal integration |
EP3827224B1 (en) | 2018-07-24 | 2023-09-06 | Magic Leap, Inc. | Temperature dependent calibration of movement detection devices |
WO2020028834A1 (en) | 2018-08-02 | 2020-02-06 | Magic Leap, Inc. | A viewing system with interpupillary distance compensation based on head motion |
US10795458B2 (en) | 2018-08-03 | 2020-10-06 | Magic Leap, Inc. | Unfused pose-based drift correction of a fused pose of a totem in a user interaction system |
US12016719B2 (en) | 2018-08-22 | 2024-06-25 | Magic Leap, Inc. | Patient viewing system |
CN117111304A (zh) | 2018-11-16 | 2023-11-24 | 奇跃公司 | 用于保持图像清晰度的图像尺寸触发的澄清 |
US20200183485A1 (en) * | 2018-12-07 | 2020-06-11 | Advanced Micro Devices, Inc. | Hint-based fine-grained dynamic voltage and frequency scaling in gpus |
WO2020163603A1 (en) * | 2019-02-06 | 2020-08-13 | Magic Leap, Inc. | Target intent-based clock speed determination and adjustment to limit total heat generated by multiple processors |
CN113544766A (zh) | 2019-03-12 | 2021-10-22 | 奇跃公司 | 在第一和第二增强现实观看器之间配准本地内容 |
JP2022530900A (ja) | 2019-05-01 | 2022-07-04 | マジック リープ, インコーポレイテッド | コンテンツプロビジョニングシステムおよび方法 |
JP2022542363A (ja) | 2019-07-26 | 2022-10-03 | マジック リープ, インコーポレイテッド | 拡張現実のためのシステムおよび方法 |
EP4058936A4 (en) | 2019-11-14 | 2023-05-03 | Magic Leap, Inc. | SYSTEMS AND METHODS FOR VIRTUAL AND AUGMENTED REALITY |
WO2021097323A1 (en) | 2019-11-15 | 2021-05-20 | Magic Leap, Inc. | A viewing system for use in a surgical environment |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0632360A1 (en) * | 1993-06-29 | 1995-01-04 | Xerox Corporation | Reducing computer power consumption by dynamic voltage and frequency variation |
TW282525B (zh) * | 1994-06-17 | 1996-08-01 | Intel Corp | |
CN1159021A (zh) * | 1996-03-06 | 1997-09-10 | 三菱电机株式会社 | 系统时钟确定装置 |
KR100487543B1 (ko) * | 2000-09-01 | 2005-05-03 | 엘지전자 주식회사 | 시피유 스케쥴링 방법 |
-
2003
- 2003-04-09 US US10/411,818 patent/US20040205757A1/en not_active Abandoned
-
2004
- 2004-02-27 CN CNB2004800159366A patent/CN100432894C/zh not_active Expired - Fee Related
- 2004-02-27 JP JP2006501203A patent/JP2006522384A/ja active Pending
- 2004-02-27 EP EP04715655A patent/EP1627291A2/en not_active Withdrawn
- 2004-02-27 WO PCT/US2004/005869 patent/WO2004095248A2/en active Application Filing
- 2004-03-03 TW TW093105593A patent/TWI260543B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
TW200426688A (en) | 2004-12-01 |
EP1627291A2 (en) | 2006-02-22 |
JP2006522384A (ja) | 2006-09-28 |
CN1802620A (zh) | 2006-07-12 |
WO2004095248A2 (en) | 2004-11-04 |
WO2004095248A3 (en) | 2005-06-02 |
US20040205757A1 (en) | 2004-10-14 |
CN100432894C (zh) | 2008-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI260543B (en) | Performance scheduling method and system, and computer readable medium | |
Im et al. | Dynamic voltage scheduling technique for low-power multimedia applications using buffers | |
Yuan et al. | Grace-1: Cross-layer adaptation for multimedia quality and battery energy | |
US8683476B2 (en) | Method and system for event-based management of hardware resources using a power state of the hardware resources | |
Liu et al. | Chameleon: Application-level power management | |
US9268389B2 (en) | Reducing power consumption on a processor system by masking actual processor load with insertion of dummy instructions | |
CN100535833C (zh) | 信息处理装置以及操作系统 | |
Tseng et al. | User-centric energy-efficient scheduling on multi-core mobile devices | |
US20170212581A1 (en) | Systems and methods for providing power efficiency via memory latency control | |
US11422857B2 (en) | Multi-level scheduling | |
JP2014235746A (ja) | マルチコア装置及びマルチコア装置のジョブスケジューリング方法 | |
Hsiu et al. | User-centric scheduling and governing on mobile devices with big. LITTLE processors | |
Im et al. | Dynamic voltage scheduling with buffers in low-power multimedia applications | |
WO2012127641A1 (ja) | 情報処理システム | |
WO2024119988A1 (zh) | 多cpu环境下的进程调度方法、装置、电子设备和介质 | |
JP5462529B2 (ja) | タスク割当装置、および、タスク割当方法 | |
US9632566B2 (en) | Dynamically controlling power based on work-loop performance | |
Zhang et al. | Optimal procrastinating voltage scheduling for hard real-time systems | |
US20200058330A1 (en) | Client latency-aware micro-idle memory power management | |
Liu et al. | Chameleon: application level power management with performance isolation | |
US20090077290A1 (en) | Controller for processing apparatus | |
Huang et al. | An optimal speed control scheme supported by media servers for low-power multimedia applications | |
US20240004453A1 (en) | Techniques for reducing processor power consumption | |
Borgetto et al. | Energy‐Efficient Job Placement on Clusters, Grids, and Clouds | |
Niu et al. | System wide dynamic power management for weakly hard real-time systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |