Allion Labs / Abel Hsu

何謂新式待命模式 – Modern Standby?

系統待命在系統電源管理中是不可或缺的一部分,如何在有限的電池容量裡取得使用時間的平衡是一個重要課題。例如沒有在使用系統時,透過讓系統進入待命模式來有效控制電量耗損並延長使用時間;而從待命模式中回復到正常操作環境,也比從執行關機後再開機的等待時間短。

「新式待命模式」就是一種以傳統待命模式(S3)所發展出來的待命狀態,這個概念最早從Windows 8開始,當時稱為「Connected Standby」,經過OS作業系統的改版升級,Windows 10時代發展為「Modern Standby)。新式待命的概念主要是提供即時回復的使用者體驗,讓系統可以從待命中快速回復到正常操作狀態。

這個想法類似生活中的智慧型手機,螢幕解鎖後馬上可以使用,當螢幕關閉時,背景持續保持網路連接,能收信、接收通訊軟體的即時訊息。新式待命透過背景保持網路連接並透過新的省電技術控制,在範圍內維持軟體運作,軟硬體方面透過ACPI低電源閒置(Low Power Idle)的基礎架構系統,支援power engine (PEP),D3裝置電源狀態支援等等,無論是傳統搭配旋轉式儲存媒體(HDD)或是混合式儲存媒體(SSD+HDD)的系統都可以支援新式待命。

和傳統S3相比,新式待命模式的最大的差異是背景中維持網路連接,當系統進入新式待命時,系統會透過一系列的步驟來確認,透過最佳化相關行為來延後非系統關鍵功能(例如IO input),或是非現代待命相關的喚醒,並監控網路活動、電子郵件等;當系統都沒有相關活動時,會進入「最深的執行時間閒置平臺狀態」(DRIPS),在這個狀態則是最佳省電模式。

那麼,使用新式待命模式主要有甚麼優點呢?和傳統S3相比,系統喚醒時間和回復較快,並且比S0更加節省電力,我們可從下表來看:

以平台支援度來說,從Ice Lake大約70%左右的系統支援Modern Standby ,到Tiger Lake平台已經接近全面性支援Modern Standby。確認手上的系統是否支援 Modern Standby的方法很簡單,可以透過Command Prompt (CMD)簡單輸入一串指令:「powercfg /a」,按下Enter鍵後,在 「Standby list」如果出現「S0 Low Power Idle」表示系統可以完整支援(參考下圖),享受現代待命帶來的用戶即時體驗:

儲存媒體與新式待命的關聯

以系統儲存媒體支援方面來看,可以分幾個面向:第一是最常見的SATA SSD,支援Device Sleep (DevSlp),可以在待命中有效增進電池壽命;另外一個則為主流儲存媒介NVMe (PCIe),透過支援PCIe Power State L1.2,可以將儲存媒體更有效進入低電源模式。

混合式儲存媒體(SSD+HDD)可以透過將資料存放在Flash中,來加速回復時間和達到節省旋轉頭的省電需求;而傳統旋轉式儲存媒體(HDD)在支援Modern Standby時,通常會透過加大快取(HDD Buffer)的方式,因為轉頭磁頭的讀寫速度,會因為寫入元件的移動時間而影響到回復(Resume)時間,加上旋轉頭旋轉會增加電量的耗損。總結來說,支援Modern Standby並不需要一個相對高規的硬體需求,現有硬體即可以有效支援。

Allion Labs與Modern Standby Services

為確保相關元件模組能夠符合規範,Intel與Microsoft以Intel參考驗證平台(Intel Reference Validation Platform, RVP)與各項元件制定了相對應的現代待命認證規範以及認證測試(Modern Standby Compliance Process )。Allion為Intel所認可的現代待命認證測試實驗室,提供包含符合Intel Modern Standby功能的認證測試與Microsoft Modern Standby功能的認證測試,可為不同的設備元件進行相關驗證並取得認證(認證種類請參考下表):

   

實際測試Modern Standby 的功能與耗電案例

現代待命認證測試 – Modern Standby中有量測進入Low Power之後設備所消耗的電力,ACPI 定義D3當系統閒置時就會進入睡眠模式,這部分又分別為「D3 cold」與「D3 hot」,這兩個都屬於Modern Standby power status,D3 cold相對D3 hot的狀態來說,為更加省電的狀態,基本上在這個狀態都是電源完全移除,而進入深眠的設備會消耗掉多少系統電力也攸關到整機的電池壽命。Modern Standby很重要的一個項目是回復時間,在這部分的規範是要在1000ms內將系統回復,如此一來才能提供使用者一個良好的操作感受。為使讀者更加清楚,我們利用主流NVMe儲存媒體來說明這些關鍵因素:

 

【NVMe – D3Hot】

以實測案例來看,進入D3後Power measured (mW) 平均值僅有1.5 mW, Exit Average Latency規範要在1000ms之內,以NVMe的來看450ms就可以從睡眠模式中喚醒,透過的PCIe的NVMe儲存媒體這部分也符合用戶的即時體驗,當使用者按下電源1秒內系統就可以正確喚醒並開始使用。

    

【NVMe – D3Cold】

以實測案例來看,進入D3後Power measured (mW) 平均值為0mW(<1mW), 以NVMe來看,這部分幾乎沒有消耗掉系統電量,Exit Avg Latency為500ms來觀察NVMe和D3 hot完全沒有消耗電量的睡眠模式僅多花50ms的時間就可以從睡眠模式中喚醒,不但省電而且一樣快速。

      

總結來說,現代待命透過軟硬體的支援,提供了快且即時的系統回復;特別是電量耗損,更加讓人放心。透過新世代技術,待命模式下僅有消耗微弱電量,讓系統能提供使用者更長的使用時間。Allion的完整Modern Standby測試服務,從元件端驗證,確保系統上的元件都能符合相關認證規範,讓終端產品符合良好使用者體驗。