阿斯~~蘭
5 years ago
Improving idle behavior in tickless systems # 最近一直被 Energy Star 7 + suspend to idle 所苦 之前是 Energy Star 6 + S3 不但要求寬鬆些 而且進 S3 後會斷電 問題不大
latest #7
阿斯~~蘭
5 years ago
新的 Energy Star 7要求嚴格 而且 suspend to idle 不會斷電 每天都在跟耗電打架 本來看到這篇 想說有新的希望 沒想到 整篇都再測效率 沒人測耗電量啊 orz
阿斯~~蘭
5 years ago @Edit 5 years ago
順便抱怨一下 kernel 對於 device 進入 S3 跟 s2idle(suspend to idle) 的動作 目前沒有分別 都是呼叫 suspend()(最近才有判斷是進 S3 還是 s2idle 的 function) 但是 嚴格來說 S3 跟 s2idle 是兩種不同的東西 當初在各家在設計 suspend() 時也都是針對 S3 是料想之後會斷電所設計的 所以當套用到 s2idle 時 有些 device 耗電反而比正常使用時還高 orz
阿斯~~蘭
5 years ago
小東西的耗電真的很難抓 因為吃的不多 但是全部加起來又超標 要請 ODM 那邊量各個 component 的耗電 他們也不太願意(是說量出來了 我們也不一定就能改善 >_<)
立即下載
YChao
5 years ago
不是S4 (hibernate)才是斷電?
阿斯~~蘭
5 years ago @Edit 5 years ago
目前抓到比較大的就是 nvme 因為 nvme 的 firmware 自己會去控制 nvme 該進入的耗電模式 當你呼叫 suspend() 時 會將 firmware 給關了 然後 nvme 會變成全速運轉 反而比正常使用時耗更多電
為此送了兩個 patch 給 upstream 但是 maintainer 認為這是 firmware bug(聽起來好像很合理) 後來發現有這種行為的不少 但也有不少是關掉 firmware 之後更省 所以沒辦法 目前只能先將這些 nvme 寫在 ubuntu kernel 裡 等找出好解法之後再來說服 upstream
阿斯~~蘭
5 years ago
yuanchao: S3 是只剩 RAM 有電 其他都斷電 然後控制權交給 BIOS
S4 是把存在 RAM 的東西都 dump 到 swap 裡 然後關機
阿斯~~蘭
5 years ago
PS. suspend to idle 就是 Windows 說的 modern standby
back to top