定時器匯聚

定時器匯聚是計算機系統的節能技術,通過降低軟體定時器的精度以允許進程喚醒同步來節約CPU被迫執行的昂貴的進入與退出空閒狀態的次數,從而降低CPU能耗。

基本介紹

  • 中文名:定時器匯聚
  • 作用:降低CPU能耗
介紹,Windows的定時器匯聚,Linux的低解析度定時器,實時時鐘,系統定時器與動,參見,

介紹

  • Linux核心通過從版本2.6.22開始支持可延遲定時器(deferrable timer),從版本2.6.28支持可控的定時器鬆弛(timer slack)。
  • Windows 7開始支持定時器匯聚。
  • Apple的基於XNU核心的OS X,稱作OS X Mavericks,支持此功能。

Windows的定時器匯聚

如果處理器的空閒周期非常短暫,處理器進入與退出低功率狀態的能耗甚至會大於空閒狀態所節約的能耗。定時器匯聚幫助改進了周期軟體行為的能耗效率,這是通過把多個不同的軟體定時器在同一時間到期,從而增加了處理器平均空閒周期的長度。
Microsoft建議軟體開發者首先檢查能否去除周期性行為,可用事件驅動或者基於中斷的設計來代替。否則,應當使用定時器匯聚,至少使用32毫秒的定時器到期容限。這對應於兩個預設系統時鐘間隔(15.6毫秒)。建議軟體定時器間隔與容限都應是50毫秒的倍數。
設備驅動程式應該使用新的核心態API函式KeSetCoalescableTimer替代KeSetTimerEx。它的參數TolerableDelay指出定時器到期容限的毫秒數。
用戶態程式從Windows Vista開始支持SetThreadpoolTimer。從Windows 7開始使用Windows API函式SetWaitableTimerEx替代SetWaitableTimer。從Windows 8開始,使用Windows API函式SetCoalescableTimer。

Linux的低解析度定時器

時鐘和定時器對Linux核心來說十分重要。首先,核心要管理系統的運行時間(run time )和當前牆上時問(wall time),即當前實際時間。其次 ,核心中大量的活動 由時間驅動(time driven)。其中一些活動是周期性的,比如平衡調度器(scheduler)中的運行佇列(run queue)或刷新螢幕這樣 的活動,它們以固定的頻率定時發生;同時,核心要非周期性地凋度某些函式在未來某個時問發生,比如推遲執行的磁碟 I/O 操作等。

實時時鐘

核心必須藉助硬體的幫助才能管理時間。實時時鐘(real time clock)是用來持久存放 系統時間的設備,它由CMOS集成在一起,並通過主機板電池供電,所以即便在關閉計算機系統之後,實時時鐘仍能繼續工作。系統啟動時,核心讀取實時時鐘,將所讀 的時間存放在變數xtime 中作為牆上時間 (wall time),xIime保存著從1970年1月1日0:00到當前時刻所經歷的秒數。雖然在Intel x86 機器上,核心會周期性地將當前時問存回實時時鐘中,但應該明確,實時時鐘的主要作 用就是在啟動時初始化牆上時間xtirne。

系統定時器與動

周期性發生的事件都是 由系統定時器(system tinier)驅動。在x86 體系結構上,系統定時器通常是一種可程式硬體晶片(如8254 CMOS晶片),叉稱為可程式間隔定時器(PIT,Programm able Interval Timer),其產生的中斷就是時鐘中斷(timer interrupt)。時鐘中斷對應的中斷處理程式負責更新系統時間和執行周期性運行的任務。系統定時器的頻率稱為節拍率(tick rate),在核心中表示為Hz。Hz的大小與系統結構相關。
以x86為例,在 2.4 之前 的核心中其大小是100;從核心 2.6 開始,也就是說每秒鐘時鐘中斷髮生1000 次。這一變化使得系統定時器的精度(resolution)由10ms提高到1ms,這大大提高了系統對於時間驅動事件潤度的準確性。但過於頻繁的時鐘中斷不可避免地增加了系統開銷(overhead),總的來說,在現代計算機系統上,Hz=1000 不會導致難以接受的系統開銷。
與系統定時器相對的是動態定時器 (dynanfic timer),它是調度事件在未來某個時刻發生的機制。核心可以動態地創建或銷毀動態定時器。

參見

  • 高級配置與電源接口(ACPI)
  • 高級可程式中斷控制器(APIC)
  • HLT (x86 instruction)
  • Interrupt coalescing
  • Interrupt handler
  • 低功耗設計
  • Programmable interval timer
  • 系統時間
  • Time Stamp Counter(TSC)
  • 無嘀嗒核心

相關詞條

熱門詞條

聯絡我們