TW201812601A - 協調裝置和應用程式中斷事件以節省平臺電力之技術(三) - Google Patents
協調裝置和應用程式中斷事件以節省平臺電力之技術(三) Download PDFInfo
- Publication number
- TW201812601A TW201812601A TW106137164A TW106137164A TW201812601A TW 201812601 A TW201812601 A TW 201812601A TW 106137164 A TW106137164 A TW 106137164A TW 106137164 A TW106137164 A TW 106137164A TW 201812601 A TW201812601 A TW 201812601A
- Authority
- TW
- Taiwan
- Prior art keywords
- processing program
- timers
- timer
- waiting period
- execution
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
-
- 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/30—Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Power Sources (AREA)
- Debugging And Monitoring (AREA)
Abstract
本發明之用於管理中斷事件的數個系統與方法可供用於:檢測來自於一第一事件來源的一第一中斷事件、以及檢測來自於一第二事件來源的一第二中斷事件。在一個範例中,這些事件來源可包括耦接至一個平臺的裝置以及在此平臺上的作動應用程式。可至少部份基於與平臺相關聯的運行時間資訊而協調第一和第二中斷事件至平臺之發出。
Description
本發明的數個實施例大體上係有關平臺中斷事件之管理。尤其是,本發明的數個實施例係有關對來自於不同來源的中斷事件之發出作協調,以改良節省平臺電力之能力。
在傳統的行動運算平台中,多輸入/輸出(input/output,IO)裝置(例如,通訊介面)和軟體應用程式可能會產生不協調的中斷事件,這可使平臺及其部件無法快速地進入低功率狀態並在那些狀態中待上較長的時間。確實,較短且次於最佳的電池壽命可導致平臺比所需更頻繁地持續待在較高功率狀態中。
依據本發明之一實施例,係特地提出一種具有機器可執行指令之機器可讀儲存媒體,當該等指令被執行時,致使一處理器用以進行一方法,該方法包含:檢測與 一第一處理程序相關聯之一第一計時器,該第一計時器指出一等待時段,該第一處理程序係在此等待時段之前執行;檢測與一第二處理程序相關聯之一第二計時器,該第二計時器指出一等待時段,該第二處理程序係在此等待時段之前執行;以及根據與該等第一及第二處理程序相關聯之一條件而將該等第一及第二計時器作時間性聯合。
10、20‧‧‧中斷事件
10a、10c、10d‧‧‧輸入/輸出(IO)事件
10b、10e、10f‧‧‧計時器事件
12、14、16‧‧‧經延長閒置時段
18、50、82‧‧‧中斷事件管理單元(BMU)
22‧‧‧經協調中斷事件
24‧‧‧運行時間資訊
26‧‧‧平臺/作業系統(OS)
28‧‧‧來源
30‧‧‧方法
32~46‧‧‧方塊
48、60‧‧‧系統
52‧‧‧處理器/平臺
54‧‧‧計時器
56(56a~56c)‧‧‧裝置
58‧‧‧聯合單元
62‧‧‧處理器
64‧‧‧輸入/輸出(IO)模組
66‧‧‧系統記憶體
68‧‧‧網路控制器
70‧‧‧固態磁碟(SSD)
72‧‧‧音訊輸入/輸出(IO)裝置
74‧‧‧積體記憶體控制器(IMC)
76‧‧‧核心
78‧‧‧功率管理單元(PMU)
80‧‧‧其他控制器
t1~t6、t1d~t6d‧‧‧瞬時
藉由閱讀下文中之說明與後附申請專利範圍,並參考下面的圖式,熟於此技者可明顯看出本發明的數個實施例之多種優點,在這些圖式中:第1圖為依據本發明之一實施例的多個經協調中斷事件之一範例的方塊圖;第2圖為依據本發明之一實施例的一個中斷事件管理單元之方塊圖;第3圖為依據本發明之一實施例的用於協調中斷事件之發出的一個方法之流程圖;第4圖為依據本發明之一實施例的一個中斷事件管理單元和多個聯合單元之方塊圖;並且第5圖為依據本發明之一實施例的一個平臺之一範例的方塊圖。
本發明的數個實施例可提供一種方法,於此方法中,係檢測到來自於一第一事件來源的一第一中斷事件, 並檢測到來自於一第二事件來源的一第二中斷事件。此方法可亦供用於至少部份基於與一個平臺相關聯的運行時間資訊而協調第一和第二中斷事件至此平臺之發出。
其他數個實施例可包括具有一組指令的一種電腦可讀儲存媒體,此組指令在由一個處理器執行時會致使一個電腦檢測來自於一第一事件來源的一第一中斷事件,及檢測來自於一第二事件來源的一第二中斷事件。這些指令可亦致使一個電腦至少部份基於與一個平臺相關聯的運行時間資訊而協調第一和第二中斷事件至此平臺之發出。
此外,本發明的數個實施例可包括一種設備,其具有一個輸入輸出(IO)模組,此IO模組具有用於檢測來自於一第一事件來源之一第一中斷事件以及檢測來自於一第二事件來源之一第二中斷事件的邏輯。此邏輯可亦至少部份基於與一個平臺相關聯的運行時間資訊而協調第一和第二中斷事件至此平臺之發出。
本發明的數個實施例可亦包括一種系統,其具有一第一事件來源、一第二事件來源、一個處理器、和耦接至此處理器的一個輸入輸出(IO)模組。此IO模組可具有用於檢測來自於一第一事件來源之一第一中斷事件以及檢測來自於一第二事件來源之一第二中斷事件的邏輯。此外,此邏輯可至少部份基於與此系統相關聯的運行時間資訊而協調第一和第二中斷事件至此系統之發出。
現在,請看向第1圖,其示出在協調多個中斷事件10(10a~10f)至一個平臺之發出之前與之後的來自於 不同來源(例如,功率管理實體)的中斷事件10。於所例示之此範例中,係針對一個瞬時t1而請求來自於一個裝置,像是滑鼠等,的一個輸入/輸出(IO)事件10a(例如,岔斷),且係針對瞬時t2而請求來自於運行於此平臺上之一作動應用程式的一個計時器事件10b。此外,可係針對瞬時t3而請求來自於另一個裝置,像是一個網路介面卡(network interface card,NIC)等,的一連串IO事件10c。如將更詳細論述的,IO事件10c本身可係藉由設置在此NIC上或一個中央位置處的一個聯合單元而被群聚在一起。可亦針對瞬時t4而請求來自於一個音訊裝置的一個IO事件10d。此外,所例示之範例亦顯示出對於分別針對瞬時t5和t6的來自於作動應用程式之計時器事件10e和10f之檢測。於其自然狀態中,中斷事件10可係具有會阻止平臺進入某些省電狀態較長時間的一個時間設定檔(time profile)。
因此,可協調中斷事件10至平臺之發出,以使平臺能夠減少功率損耗。例如,所例示之來自於滑鼠的IO事件10a被延緩至一個經延緩瞬時t1d,以使其可與在經延緩瞬時t2d被發出的應用程式計時器事件10b之發出對齊。在另一個實施例中,計時器事件10b可為一個無延緩事件。在這樣的情況中,可延緩IO事件10a,而計時器事件10b可如排程發出。在此二者當中的任何一種情況中,均可創造出一個經延長閒置時段12,於此經延長閒置時段12中,平臺可較快地進入較深層的省電狀態(例如,先進組態與電力介面規格(Advanced Configuration and Power Interface Specification,ACPI),2009年六月16日的ACPI規格4.0揭示版,低功率狀態),並且因為經延長閒置時段12而待上較長的時間。此外,來自於NIC的IO事件10c可分別於經延緩瞬時t3d和t4d與來自於音訊裝置的IO事件10d對齊,以創造出另一個經延長閒置時段14。類似地,可分別將應用程式計時器事件10e和10f延緩至瞬時t5d和t6d,這可導致一個經延長閒置時段16。簡單來說,經延長閒置時段12、14、16可致能改良的節省平臺電力之能力和較長的電池壽命。
第2圖示出一個中斷事件管理單元(break event management unit,BMU)18,其可檢測出中斷事件20並至少部份基於與一個平臺/作業系統(operating system,OS)26相關聯的運行時間資訊24而將其對齊成經協調中斷事件22。BMU 18可係實施在平臺26的一個模組中,例如一個行動網際網路裝置(mobile Internet device,MID)平臺的系統控制單元(system control unit,SCU),或是一個膝上型平臺的平臺控制器集線器(platform controller hub,PCH)。確實,BMU 18可係以稍微不同的介面和實作技術而常駐在作業系統(OS)核心空間中,或是在使用者空間中。在所例示的範例中,運行時間資訊24可係從中斷事件20之來源28以及平臺26本身獲得。例如,獲得自耦接至此平臺的一個裝置的運行時間資訊24可包括有識別針對一或多個IO事件之最大延遲時間的服務品質(quality of service,QoS)規格。此外,獲得自一個應用程式的運行時間資訊24可亦識別一或多個計時器事件的可延緩性特性。例如,若一個計 時器事件是不可延緩的,則BMU 18可試著使其他中斷事件與此不可延緩計時器事件對齊。在其他情況中,BMU 18可管理計時器事件以求最佳平臺功率節省能力和效能。
舉例來說,若一個應用程式請求要使一個計時器事件每50ms發生,且可延緩至每100ms的最大頻率,則BMU 18可在平臺26相對未作動時每100ms觸發此計時器事件。然而,若平臺26變得更具作動性,則由於由其他來源所產生的中斷事件的關係,BMU 18可將對此計時器事件的發出朝向50ms改換(adapt)以求較佳的效能,而不在功率損耗上帶來負面衝擊。
此外,平臺26也可係以低功率狀態中斷均等時間、可規劃效能需求等等形式來提供運行時間資訊24。低功率狀態中斷均等時間可指出平臺26應該待在一個特定低功率狀態中的時間量,以推移/緩衝與進入和離開此低功率狀態相關聯的任何功率成本負擔。如將更詳細說明的,BMU 18可使用低功率狀態中斷均等時間來判定針對各個經延緩中斷事件的保持時間。在這方面,當保持時間變得比中斷事件時間長很多的時候,省電效益可能會快速地下降,且效能會顯著降低。因此,BMU 18可基於中斷事件時間和所想要的效能而判定一個合理的保持時間。
可規劃效能需求可係由平臺的使用者界定。因此,若使用者想要較高的效能,則保持時間可被向下調至較短的值,以提供較快速的回應及增進的效能(可能同時會失去一些省電機會)。另一方面,若使用者要求較長的電 池壽命,則可將保持時間設為相對較長的值,以提供平臺更多機會來維持在較低功率狀態中。
現在請看向第3圖,其示出用於協調中斷事件之發出的一種示範方法。此方法30可係利用電路技術,像是ASIC、補償金氧半導體(complementary metal oxide semiconductor,CMOS)或電晶體電晶體邏輯(transistor-transistor logic,TTL)技術等,而實施在固定功能硬體中,或是實施在可執行軟體中,像是儲存在一個記憶體之機器可讀或電腦可讀儲存媒體,例如隨機存取記憶體(random access memory,RAM)、唯讀記憶體(read only memory,ROM)、可規劃ROM(programmable ROM,PROM)、快閃記憶體等等,中的一組韌體和/或邏輯指令,或是其任何組合。處理方塊32供用於收集來自於裝置、應用程式和平臺的運行時間資訊,並基於運行時間資訊而判定一個保持時間。如先前已經提過的,對保持時間之判定可將低功率中斷事件時間和可規劃效能需求、以及針對IO事件的最大延遲時間和計時器事件之可延緩性特性納入考量。
若在方塊34檢測到一個中斷事件,則可在方塊36做出對於保持時間是否已到期的判定。若否,則可在方塊38延緩此中斷事件。視環境而定,係可以多種不同方式來完成中斷事件之延緩。例如,可將中斷事件置於一個佇列中,其中這個佇列可係與BMU 18(第2圖)並列、與發出此中斷事件之裝置並列、在與此裝置相關聯的一個聯合單 元中、或以此類推。確實,若中斷事件係與一個匯流排主控異動相關連(例如,直接記憶體存取(direct memory access,DMA)),則可藉由解宣告一個快速週邊組件互連(Peripheral Components Interconnect Express,PCIe)機會緩衝器清除/填充(opportunistic buffer flush/fill,OBFF)信號來通知來源裝置此PCIe匯流排不可用,而延緩此中斷事件。
若在方塊40檢測到一個不可延緩中斷事件,或者是在方塊36判定出保持時間已經到期,則所有經延緩的中斷事件皆可在方塊42被釋放/發出至平臺。所例示之方塊44供用於基於所收集到的運行時間資訊而安排下一個保持時間。如先前已經提過的,保持時間係可被動態地調整。可在方塊46將下一個保持時間告知平臺功率管理單元。
第4圖示出一個系統48,其中,一個BMU 50耦接至從應用程式計時器54和裝置56(56a~56c)接收多種中斷事件的一個處理器/平臺52,其中這些中斷事件可致使處理器/平臺52離開(或避免進入)一或多個低功率狀態。於所例示的這個範例中,可係使用聯合單元58來減少中斷事件之數目,例如藉由將否則可能會導致複數個中斷事件的複數個封包組合成單一個中斷事件。因而,對於通訊裝置,例如網路控制器,來說,聯合單元58可以是特別有用處的,雖然其他裝置和應用程式亦可從此聯合處理程序中獲益。
從啟動時間的初始化階段開始,聯合單元58可獲得,或可能已經知道,數個系統參數,例如置換政策、裝 置緩衝器大小、裝置潛伏容忍需求等等。這些參數可由聯合單元58使用,以判定以初始裝置/應用程式為基礎的一個保持時間,此保持時間可在之後有需要時基於運行時間行為而被調整。在運行時間當中,聯合單元58可追蹤各個有中斷能力的裝置來判定此裝置是否已經安靜了一段預定時間(例如,在前α ms中沒有產生任何岔斷)。依據這樣的無活動性,所述聯合單元可進入一個保持區間(例如,長達βms),於此保持區間中,沒有任何來自於此特定來源的岔斷會被中繼至BMU 50和/或處理器/平臺52。此途徑可係於一種逐裝置/應用程式基礎上實施,且具有針對各個裝置/應用程式的不同參數。此外,係可使用某些策略來繞過聯合單元58,像是高效能/評量基準模式等等。
雖然聯合單元58係可被實施在裝置56和應用程式計時器中,但將其定位在BMU 50中可能會由於消除任何需要裝置製造商來支援中斷事件對齊的需求而比較易於擴充。將聯合單元58實施在BMU 50中可能會涉及對保持計時器β之上限可與此裝置之內部緩衝器大小相容的保證,以避免緩衝器超限運轉。此外,無活動性計時器α可被設定成一個夠大的值,以使得能夠避免早熟到期和在最大系統效能上的任何負面衝擊。
在聯合計時器改換上係有多種不同的策略可以使用。例如,一種「靜態策略」可能會涉及將聯合行為連結至一個使用者設定的(或以OS設定檔為基礎的)系統偏好。因此,若使用者偏好高效能設定檔,則可藉由β=0來繞 過聯合動作。針對平衡效能/功率設定檔而言,係可選擇β=5ms的一個典型值。針對具有最大省電效果的低功率模式而言,可選擇β=10ms的一個典型值。或者是,可使用一種「動態策略」,於此動態策略中,係基於在某段計數時期中所觀察到的平均中斷事件數,而以一種閉迴路基礎來控制β。此途徑可因而使聯合動作儘可能地為無打擾狀態,以使中斷事件行為(平均來講)沒有明顯改變。從一個典型上很小的β值開始,可在一段相對較長的時段(例如,為以秒計的量級)中觀察來自於數個個別裝置的中斷事件之數量,並且可累進地增加β,直到事件的平均數量有顯著改變為止。取決於改變而定,β可被重設成從起點開始改換或者是以倍數減少。
現在請看向第5圖,其示出一個系統60。系統60可為具有運算功能(例如,個人數位助理(personal digital assistant,PDA)、膝上型電腦)、通訊功能(例如,無線智慧型手機)、影像功能、媒體播放功能、或其任何組合(例如,行動網際網路裝置(mobile Internet device,MID))的一個行動平臺的一部分。於所例示之範例中,系統60包括有一個處理器62、一個積體記憶體控制器(integrated memory controller,IMC)74、一個IO模組64、系統記憶體66、一個網路控制器(例如,網路介面卡)68、一個音訊IO裝置72、一個固態磁碟(solid state disk,SSD)70、以及一或多個其他控制器80。可包括有具有一或數個處理器核心76的一個核心區域的處理器62可利用一個功率管理單 元(power management unit,PMU)78來基於如先前所述的效能和/或功率管理考慮條件,而將其核心76和其他系統部件置於一或多個作動或閒置狀態中。
所例示之IO模組64,有時候亦稱為晶片之南橋(Southbridge)或南複合體(South Complex),係作用為一個主機裝置,並與網路控制器68通訊,網路控制器68可針對多種用途,像是行動電話(例如,W-CDMA(UMTS)、CDMA2000(IS-856/IS-2000)等等)、WiFi(例如,1999年版的IEEE 802.11,LAN/MAN無線LANS(LAN/MAN Wireless LANS))、藍牙(Bluetooth)(例如,IEEE 802.15.1-2005,無線個人區域網路(Wireless Personal Area Networks))、WiMax(例如,IEEE 802.16-2004,LAN/MAN寬頻無線LANS(LAN/MAN Broadband Wireless LANS))、全球定位系統(Global Positioning System,GPS)、展開頻譜(例如,900MHz)、及其他無線電頻率(radio frequency,RF)通話用途等,而提供平臺外通訊功能。IO模組64可亦包括有一或多個無線硬體電路區塊,以支援這樣的功能性。
SSD 70可包括有一或多個NAND晶片,並且可用於提供高容量資料儲存體和/或很大量的平行性。可亦有包括有被作為分開的數個特定應用積體電路(application specific integrated circuit,ASIC)控制器實施的NAND控制器之解決方案,此等ASIC控制器在標準匯流排,像是串列ATA(Serial ATA,SATA,例如,SATA國際組織(SATA International Organization,SATA-IO)於2009年五月27日之 SATA揭示版3.0規格)匯流排、或快速週邊組件互連圖形(PCI Express Graphics,PEG,例如,PCI特別興趣群的快速週邊組件互連/PCI x16圖形150W-ATX規格1.0)匯流排,上連接至IO模組64。可亦將SSD 70用作通用串列匯流排(Universal Serial Bus,USB,例如,USB實施者論壇(USB Implementers Forum)的USB規格2.0)快閃儲存體裝置。
所例示之IO模組64包括有一個BMU 82,其係組配來檢測來自於多個不同來源,像是網路控制器68、音訊IO裝置72、SSD 70、在處理器62上執行的作動應用程式等等,的中斷事件,並基於與系統60相關聯的運行時間資訊而協調中斷事件至處理器62之發出。在一個範例中,對於中斷事件之發出的協調動作包括基於運行時間資訊而判定一個保持時間、以及基於保持時間而延緩這些中斷事件中的至少一個。例如,系統60可執行一個網際網路協定上的語音(voice over Internet Protocol,VoIP)應用程式,於此應用程式中,網路控制器68和音訊IO裝置72各在只有稍微或完全沒有考慮由其他裝置所產生的IO事件的情況下主動產生IO事件。藉由利用BMU 82來協調來自於網路控制器68和音訊IO裝置72的中斷事件,所例示之IO模組64可使系統60的部件能夠進入較深層的低功率狀態較長的時間,並且因而可顯著地增進由系統60所達到的省電效果。
因此,上文中所述的技術可提供一個全面的途徑來界定運算系統架構和介面,以使其協調並對齊多個IO裝置和應用程式之活動。如此一來,可最大化平臺閒置以求 最佳平臺省電效果。此外,這樣的協調和對齊動作可使平臺能夠更近一步接近理想的「呈工作負載比例」功率消耗,並具有穩健的效能。
本發明之實施例可應用於對於所有類型的半導體積體電路(integrated circuit,「IC」)晶片之使用。這些IC晶片的範例包括但不受限於處理器、控制器、晶片組部件、可規劃邏輯陣列(programmable logic arrays,PLA)、記憶體晶片、網路晶片、單晶片系統(systems on chip,SoC)、SSD/NAND控制器ASIC、及其他諸如此類者。此外,在一些圖式中,信號導體線路係以線條表示。有一些可能會粗一點以指出較多成份信號路徑、具有數字標號以指出成份信號路徑之數量,並/或在一或更多端具有箭頭以指出主要資訊流向。然而,這不應被解讀為一種限制行為。相反地,這樣的增入細節可配合一或多個示範實施例使用,以有助於更容易地瞭解一個電路。所表示出來的任何信號線路,無論是否具有額外資訊,皆可實際上包含可以多方向行進的一或多個信號,並可就任何合適的信號架構類型實施,例如,以差動對實施的數位或類比線路、光纖線路及/或單端線路。
於本文中可能已給出示範尺寸/模型/數值/範圍,雖然本發明之數個實施例並不受限於此等尺寸/模型/數值/範圍。由於製造技術(例如,光微影術)隨著時間愈趨成熟,可預期較小尺寸的裝置可被製造。此外,對IC晶片及其他部件的習知電源/接地連接可以或可以不被示於 圖式中,以利例示與論述之簡明性,並以使本發明之數個實施例的某些面相不被混淆。更進一步地,可係於方塊圖之形式中示出數個配置,以避免混淆本發明之數個實施例,並且,如此係有鑑於這樣的事實,即,針對此等方塊圖配置之實作的細節係高度倚賴於要在當中實施此實施例的平台,亦即,此等細節應完全係落於熟於此技者的眼界內。當闡明特定細節(例如,電路)以說明本發明之數個示範實施例時,對於熟於此技者而言,應可明顯看出,本發明之數個實施例可係在無此等特定細節,或變更此等特定細節的情況下實踐。此說明因此應被看作是例示性的,而非限制性的。
「耦接」此詞於本文中可係用於指涉在所論部件之間的任何類型的關係,直接或間接,並可適用於電氣的、機械的、流體的、光學的、電磁的、電機的或其他連接。此外,除非已指出其他情況,否則「第一」、「第二」等等詞語於本文中僅係用來有助於論述,而不帶任何特定時間性或時間順序性意義。
從前文之說明中,熟於此技者會可識出,本發明之數個實施例的寬廣技術可係以多種形式來實施。因此,雖然已以相關於前文中之特定範例的方式來說明本發明之此等實施例,本發明之此等實施例的真實範圍亦不應被這樣限制,因為對於熟鍊的專業人員而言,經參讀圖式、說明書與後附申請專利範圍後,其他修改體會是很明顯可見的。
Claims (21)
- 一種具有機器可執行指令之機器可讀儲存媒體,當該等指令被執行時,致使一處理器用以進行一方法,該方法包含:檢測與一第一處理程序相關聯之一第一計時器,該第一計時器指出一等待時段,該第一處理程序係在此等待時段之前執行;檢測與一第二處理程序相關聯之一第二計時器,該第二計時器指出一等待時段,該第二處理程序係在此等待時段之前執行;以及根據與該等第一及第二處理程序相關聯之一條件而將該等第一及第二計時器作時間性聯合。
- 如請求項1之機器可讀儲存媒體,其中,將該等第一及第二計時器作時間性聯合包含:搬移該等第一及第二處理程序之執行時間以使得閒置時間窗口之持續時間增加。
- 如請求項1之機器可讀儲存媒體,其中,將對該等第一及第二計時器之執行作時間性聯合包含:搬移該等第一及第二處理程序之執行時間以使得該等第一及第二處理程序之執行時間係實質上彼此對齊。
- 如請求項1之機器可讀儲存媒體,其中,將對該等第一及第二計時器之執行作時間性聯合包含:延緩該第一處理程序之執行時間以與該第二處理程序之執行時間實 質上對齊。
- 如請求項1之機器可讀儲存媒體,其中,該條件為下列中之一者:該等第一及第二處理程序相對於彼此的重要性;或該等第一及第二計時器的等待時段之持續時間。
- 如請求項1之機器可讀儲存媒體,其更具有指令,當該等指令被執行時,致使該處理器用以進行進一步之方法,包含:檢測與一第三處理程序相關聯之一第三計時器,該第三計時器指出一等待時段,該第三處理程序係在此等待時段之前執行;識別該第三處理程序相對於該等第一及第二處理程序的重要性;以及在將該等第一及第二計時器作時間性聯合的時候維持該第三計時器。
- 如請求項1之機器可讀儲存媒體,其更具有指令,當該等指令被執行時,致使該處理器用以進行進一步之方法,包含:增加該處理器在閒置狀態中所耗的時間量。
- 一種藉由一處理器所進行之方法,該方法包含:檢測與一第一處理程序相關聯之一第一計時器,該第一計時器指出一等待時段,該第一處理程序係在此等待時段之前執行;檢測與一第二處理程序相關聯之一第二計時器,該 第二計時器指出一等待時段,該第二處理程序係在此等待時段之前執行;以及藉由根據與該等第一及第二處理程序相關聯之一條件而將該等第一及第二計時器作時間性聯合來修改該等第一及第二計時器。
- 如請求項8之方法,其中,將該等第一及第二計時器作時間性聯合包含:搬移該等第一及第二處理程序之執行時間以使得閒置時間窗口之持續時間增加。
- 如請求項8之方法,其中,將對該等第一及第二計時器之執行作時間性聯合包含:搬移該等第一及第二處理程序之執行時間以使得該等第一及第二處理程序之執行時間係實質上彼此對齊。
- 如請求項8之方法,其中,將對該等第一及第二計時器之執行作時間性聯合包含:延緩該第一處理程序之執行時間以與該第二處理程序之執行時間實質上對齊。
- 如請求項8之方法,其中,該條件為下列中之一者:該等第一及第二處理程序相對於彼此的重要性;或該等第一及第二計時器的等待時段之持續時間。
- 如請求項8之方法,其包含:檢測與一第三處理程序相關聯之一第三計時器,該第三計時器指出一等待時段,該第三處理程序係在此等待時段之前執行;識別該第三處理程序相對於該等第一及第二處理程序的重要性;以及 在將該等第一及第二計時器作時間性聯合的時候維持該第三計時器。
- 如請求項8之方法,其包含:增加該處理器在閒置狀態中所耗的時間量。
- 一種系統,其包含:一記憶體;耦接至該記憶體之一處理器,該處理器執行一作業系統,該作業系統係可運作用以:檢測與一第一處理程序相關聯之一第一計時器,該第一計時器指出一等待時段,該第一處理程序係在此等待時段之前執行;檢測與一第二處理程序相關聯之一第二計時器,該第二計時器指出一等待時段,該第二處理程序係在此等待時段之前執行;以及根據與該等第一及第二處理程序相關聯之一條件而將該等第一及第二計時器作時間性聯合;及一無線介面,用於允許該處理器與另一裝置通訊。
- 如請求項15之系統,其中,將該等第一及第二計時器作時間性聯合包含:搬移該等第一及第二處理程序之執行時間以使得閒置時間窗口之持續時間增加。
- 如請求項15之系統,其中,將對該等第一及第二計時器之執行作時間性聯合包含:搬移該等第一及第二處理程序之執行時間以使得該等第一及第二處理程序之執行時間係實質上彼此對齊。
- 如請求項15之系統,其中,將對該等第一及第二計時器之執行作時間性聯合包含:延緩該第一處理程序之執行時間以與該第二處理程序之執行時間實質上對齊。
- 如請求項15之系統,其中,該條件為下列中之一者:該等第一及第二處理程序相對於彼此的重要性;或該等第一及第二計時器的等待時段之持續時間。
- 如請求項15之系統,其中,該作業系統係可進一步運作用以:檢測與一第三處理程序相關聯之一第三計時器,該第三計時器指出一等待時段,該第三處理程序係在此等待時段之前執行;識別該第三處理程序相對於該等第一及第二處理程序的重要性;以及在將該等第一及第二計時器作時間性聯合的時候維持該第三計時器。
- 如請求項15之系統,其中,該作業系統係可進一步運作用以:增加該處理器在閒置狀態中所耗的時間量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/888,855 | 2010-09-23 | ||
US12/888,855 US8612998B2 (en) | 2010-09-23 | 2010-09-23 | Coordinating device and application break events for platform power saving |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201812601A true TW201812601A (zh) | 2018-04-01 |
TWI637271B TWI637271B (zh) | 2018-10-01 |
Family
ID=45872025
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100134144A TWI559150B (zh) | 2010-09-23 | 2011-09-22 | 協調裝置和應用程式中斷事件以節省平臺電力之技術 |
TW105126652A TWI611297B (zh) | 2010-09-23 | 2011-09-22 | 協調裝置和應用程式中斷事件以節省平臺電力之技術(二) |
TW106137164A TWI637271B (zh) | 2010-09-23 | 2011-09-22 | 協調裝置和應用程式中斷事件以節省平臺電力之技術(三) |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100134144A TWI559150B (zh) | 2010-09-23 | 2011-09-22 | 協調裝置和應用程式中斷事件以節省平臺電力之技術 |
TW105126652A TWI611297B (zh) | 2010-09-23 | 2011-09-22 | 協調裝置和應用程式中斷事件以節省平臺電力之技術(二) |
Country Status (8)
Country | Link |
---|---|
US (3) | US8612998B2 (zh) |
JP (1) | JP5628431B2 (zh) |
KR (1) | KR101506857B1 (zh) |
CN (1) | CN102597912B (zh) |
DE (1) | DE112011103194B4 (zh) |
GB (1) | GB2497025B (zh) |
TW (3) | TWI559150B (zh) |
WO (1) | WO2012040068A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8612998B2 (en) | 2010-09-23 | 2013-12-17 | Intel Corporation | Coordinating device and application break events for platform power saving |
CN103218032B (zh) | 2011-11-29 | 2017-07-14 | 英特尔公司 | 利用相对能量损益平衡时间的功率管理 |
US9311145B2 (en) * | 2012-06-29 | 2016-04-12 | Intel Corporation | Using platform idle duration information to notify platform devices of upcoming active periods |
US9213390B2 (en) * | 2012-12-28 | 2015-12-15 | Intel Corporation | Periodic activity alignment |
US9195292B2 (en) * | 2013-06-26 | 2015-11-24 | Intel Corporation | Controlling reduced power states using platform latency tolerance |
EP3014460A4 (en) * | 2013-06-28 | 2016-11-30 | Intel Corp | ADAPTIVE INTERRUPTION COALESCENCE FOR MOBILE PLATFORMS WITH LOW POWER CONSUMPTION |
US9891686B2 (en) * | 2013-09-26 | 2018-02-13 | Intel Corporation | Throttling device power |
KR20160110509A (ko) * | 2014-03-24 | 2016-09-21 | 인텔 코포레이션 | 전력 소비를 감소시키기 위한 인터럽트 처리의 동기화 |
KR101941761B1 (ko) * | 2014-05-12 | 2019-01-23 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 소비 전력을 감소하기 위한 방법, 장치 및 모바일 단말기 |
US9860189B2 (en) * | 2015-04-30 | 2018-01-02 | Dell Products Lp | Systems and methods to enable network communications for management controllers |
US10067847B1 (en) * | 2015-09-08 | 2018-09-04 | Amazon Technologies, Inc. | Time-based on-chip hardware performance monitor |
US9965220B2 (en) | 2016-02-05 | 2018-05-08 | Qualcomm Incorporated | Forced idling of memory subsystems |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5832286A (en) * | 1991-12-04 | 1998-11-03 | Sharp Kabushiki Kaisha | Power control apparatus for digital electronic device |
US5613129A (en) * | 1994-05-02 | 1997-03-18 | Digital Equipment Corporation | Adaptive mechanism for efficient interrupt processing |
FR2776460A1 (fr) * | 1998-03-20 | 1999-09-24 | Philips Electronics Nv | Procede et dispositif d'economie d'energie, et equipement electronique embarque |
US6065089A (en) * | 1998-06-25 | 2000-05-16 | Lsi Logic Corporation | Method and apparatus for coalescing I/O interrupts that efficiently balances performance and latency |
SG65097A1 (en) * | 1998-12-28 | 2001-08-21 | Compaq Computer Corp | Break event generation during transitions between modes of operation in a computer system |
US6711644B1 (en) | 2000-07-27 | 2004-03-23 | International Business Machines Corporation | Apparatus and method for communicating the completion of asynchronous input/output |
US6823240B2 (en) | 2001-12-12 | 2004-11-23 | Intel Corporation | Operating system coordinated thermal management |
EP1471431B1 (en) * | 2002-01-24 | 2007-10-24 | Fujitsu Limited | Computer for determining interruption delay dynamically |
US7093141B2 (en) | 2002-12-18 | 2006-08-15 | International Business Machines Corporation | Power aware adaptive polling |
US7313708B2 (en) * | 2004-04-28 | 2007-12-25 | Microsoft Corporation | Interlocked plug and play with power management for operating systems |
US7451333B2 (en) * | 2004-09-03 | 2008-11-11 | Intel Corporation | Coordinating idle state transitions in multi-core processors |
JP2006072698A (ja) * | 2004-09-02 | 2006-03-16 | Matsushita Electric Ind Co Ltd | 省電力対応装置 |
US20060075347A1 (en) | 2004-10-05 | 2006-04-06 | Rehm Peter H | Computerized notetaking system and method |
US7853960B1 (en) * | 2005-02-25 | 2010-12-14 | Vmware, Inc. | Efficient virtualization of input/output completions for a virtual device |
US7454632B2 (en) * | 2005-06-16 | 2008-11-18 | Intel Corporation | Reducing computing system power through idle synchronization |
US7640412B2 (en) | 2007-01-04 | 2009-12-29 | Hitachi Global Storage Technologies Netherlands, B.V. | Techniques for improving the reliability of file systems |
US8892780B2 (en) | 2007-03-08 | 2014-11-18 | Oracle International Corporation | Management of shared storage I/O resources |
US8661167B2 (en) | 2007-09-17 | 2014-02-25 | Intel Corporation | DMA (direct memory access) coalescing |
US20090150696A1 (en) * | 2007-12-10 | 2009-06-11 | Justin Song | Transitioning a processor package to a low power state |
US8024590B2 (en) * | 2007-12-10 | 2011-09-20 | Intel Corporation | Predicting future power level states for processor cores |
US8255713B2 (en) | 2008-06-26 | 2012-08-28 | Intel Corporation | Management of link states using plateform and device latencies |
EP2350875A1 (en) | 2008-09-19 | 2011-08-03 | Oracle International Corporation | Storage-side storage request management |
US8195750B1 (en) | 2008-10-22 | 2012-06-05 | Kaspersky Lab, Zao | Method and system for tracking botnets |
US8468601B1 (en) | 2008-10-22 | 2013-06-18 | Kaspersky Lab, Zao | Method and system for statistical analysis of botnets |
US8495403B2 (en) | 2008-12-31 | 2013-07-23 | Intel Corporation | Platform and processor power management |
US8612998B2 (en) | 2010-09-23 | 2013-12-17 | Intel Corporation | Coordinating device and application break events for platform power saving |
US8601296B2 (en) * | 2008-12-31 | 2013-12-03 | Intel Corporation | Downstream device service latency reporting for power management |
US8599729B2 (en) | 2009-09-22 | 2013-12-03 | Intel Corporation | Adaptive power control in a wireless device |
US9081621B2 (en) * | 2009-11-25 | 2015-07-14 | Microsoft Technology Licensing, Llc | Efficient input/output-aware multi-processor virtual machine scheduling |
US8635469B2 (en) | 2009-12-22 | 2014-01-21 | Intel Corporation | Method and apparatus for I/O devices assisted platform power management |
US8279790B2 (en) | 2010-03-11 | 2012-10-02 | Intel Corporation | Packet buffering based at least in part upon packet receipt time interval weighted moving average |
JP2012003691A (ja) * | 2010-06-21 | 2012-01-05 | Panasonic Corp | 情報処理装置、情報処理方法、情報処理プログラム、情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体及び集積回路 |
US9026829B2 (en) * | 2010-09-25 | 2015-05-05 | Intel Corporation | Package level power state optimization |
-
2010
- 2010-09-23 US US12/888,855 patent/US8612998B2/en active Active
-
2011
- 2011-09-16 WO PCT/US2011/052045 patent/WO2012040068A1/en active Application Filing
- 2011-09-16 KR KR1020137007334A patent/KR101506857B1/ko active IP Right Grant
- 2011-09-16 CN CN201180002743.7A patent/CN102597912B/zh active Active
- 2011-09-16 GB GB1303674.4A patent/GB2497025B/en active Active
- 2011-09-16 DE DE112011103194.7T patent/DE112011103194B4/de active Active
- 2011-09-16 JP JP2013529384A patent/JP5628431B2/ja active Active
- 2011-09-22 TW TW100134144A patent/TWI559150B/zh active
- 2011-09-22 TW TW105126652A patent/TWI611297B/zh active
- 2011-09-22 TW TW106137164A patent/TWI637271B/zh active
-
2013
- 2013-12-13 US US14/105,770 patent/US8959531B2/en active Active
-
2014
- 2014-12-26 US US14/583,412 patent/US9513964B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8612998B2 (en) | 2013-12-17 |
TWI559150B (zh) | 2016-11-21 |
KR20130048786A (ko) | 2013-05-10 |
US9513964B2 (en) | 2016-12-06 |
KR101506857B1 (ko) | 2015-03-30 |
US8959531B2 (en) | 2015-02-17 |
WO2012040068A1 (en) | 2012-03-29 |
US20140101674A1 (en) | 2014-04-10 |
GB2497025B (en) | 2018-06-06 |
TW201719432A (zh) | 2017-06-01 |
JP5628431B2 (ja) | 2014-11-19 |
JP2013543613A (ja) | 2013-12-05 |
DE112011103194B4 (de) | 2017-02-09 |
CN102597912B (zh) | 2015-03-25 |
TWI611297B (zh) | 2018-01-11 |
US20120079482A1 (en) | 2012-03-29 |
GB201303674D0 (en) | 2013-04-17 |
US20150113543A1 (en) | 2015-04-23 |
GB2497025A (en) | 2013-05-29 |
DE112011103194T5 (de) | 2013-06-27 |
CN102597912A (zh) | 2012-07-18 |
TWI637271B (zh) | 2018-10-01 |
TW201217973A (en) | 2012-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI637271B (zh) | 協調裝置和應用程式中斷事件以節省平臺電力之技術(三) | |
CN105183128B (zh) | 强制处理器进入低功率状态 | |
US8924758B2 (en) | Method for SOC performance and power optimization | |
TWI557541B (zh) | 虛擬化行動平台中之細粒電源管理技術 | |
US20160124778A1 (en) | System and method for providing dynamic clock and voltage scaling (dcvs) aware interprocessor communication | |
TWI541720B (zh) | 有效頻率提升操作之技術 | |
US20140258749A1 (en) | Dynamically entering low power states during active workloads | |
WO2014004388A1 (en) | Using device idle duration information to optimize energy efficiency | |
TW201428479A (zh) | 用於電源及效能之適應性停用及啓用睡眠狀態之技術 | |
KR20150145241A (ko) | 일반 호스트 기반 제어기 레이턴시 방법 및 장치 | |
US9377833B2 (en) | Electronic device and power management method | |
US9541983B2 (en) | Controlling reduced power states using platform latency tolerance | |
TWI614616B (zh) | 使用平台閒置持續時間資訊以通知平台裝置即將到來的有效期間之技術 | |
US10025370B2 (en) | Overriding latency tolerance reporting values in components of computer systems | |
TWI603187B (zh) | 週期活動調整 | |
US20140149759A1 (en) | Providing An Inter-Arrival Access Timer In A Processor |