Re: [討論] Low Power?
※ 引述《WYchuang (打不留歪莊)》之銘言:
: ※ 引述《saker ()》之銘言:
: : ※ 引述《WYchuang (打不留歪莊)》之銘言:
: : : 說到實際面 ...
: : : 我只看果有某paper利用OS的排程機制來省電(某位老中的paper)
: : : 理由很簡單,但是做起來頗麻煩,就是在schedule的時候
: : : 把所有的task作個分析,預測一下每個task下個時間點的IO (這邊是最難的部分)
: : : 然後把一樣IO的task排在一起執行,當這些一樣IO的task都跑過之後
: : : 把該IO調到idle (因為暫時沒有task會需要它了)
: : : 其他的都是一堆機率,看都看不懂 XD
就字面上看來,
就是找出task有用到哪些module(Hardware),
然後讓那些module睡久一點,
這個基礎是module的operation mode switch很耗時or耗能.
沒用的module就去睡, 睡越多, power越低.
: : 看到這個我有一點疑問.....
: : 基本上task的新增是隨時都有可能的吧...
: : 難道每次schedule時都要重新分析一次? 這樣loading會不會太大阿
: : 而且在embedded上還有硬體限制說 我之前聽老師說過 基本上
: : 這種想法只能在paper寫寫而已 因為他們都是考慮理想狀況
: : 要真正拿來使用幾乎不可能.....不過我沒有看過這篇paper
: : 所以我也只是隨便說說而已..... :)
:
: ㄟ ... 詳細的狀況由於年代久遠,我早忘了 :-P
: 不過我記得他有實做,然後還有數據的樣子 ...
:
即時動態分析就可以了,
那paper我也沒看過 :)
但有類似的方式用於cache.
一般cache中的內容, 馬上有用到的部份只有被hit的部份,
所以那paper就將原本的3.3v降到1v, 這樣速度變的很慢,
但很省power. 降壓是部分降, 一部分還是處於高壓(快速),
然後有一些方法判定哪些要由高壓變低壓, 哪些低壓變高壓,
假如猜對的話, 那個區域的power省很多,
假如猜錯的話....花時間由低壓變高壓 (就是變慢 Orz )
不管CPU如何access memory, 那個cache都不會有問題,
頂多power很大且效能很差 XD
不過那是最差的情況, 在paper的實驗中還不錯!
Krisztian Flautner, Nam Sung Kim, Steve Martin, David Blaauw,Trevor Mudge.
"Drowsy Caches: Simple Techniques for Reducing Leakage Power,"
ISCA'02, p.p. 148-157.
應該有特定的方式在收集資料, 例如某module的使用情況,
所以每次schedule時, 就可以愈預測這個task和module之間的關係,
進而排出low power的順序, 所以才有一堆機率.
loading! 就要看演算法和low power的需求度,
就像IA32的主力CPU的power都很高, 而ARM的CPU都不高(有的還很低),
就是看哪個是主要,那個是次要.
在實作中, 都是case by case沒有定則, 只有候選方案(建議方法).
: : : 我只看過在即時系統的討論
: : : 由於real-time sys知道每個task的最短執行時間(理論上啦)
: : : 如果系統可以降速度跑,但依然可以符合此task的時間需求
: : : 那就降速跑,理論上似乎可以省電
: : 那降速跑的功能是作在軟體還是硬體阿
: : 如果是軟體handle 那不是又要多task來處理這一件工作
: : 那摸分析的task + 降速後的task 會不會反而耗電量比原task還多??
:
: 降速度跑大概是軟體決定,硬體執行 ...
: (比較dynamic的東西,硬體做應該會想死吧)
其實也有硬體決定,硬體執行. 只是user沒感覺而已,
只發現這個機器的power好像很低 XD
大部分還是體決定,硬體執行.
因為這個能玩的花樣很多, 例如在校能極度不需要的妝況下, 關閉cache的電,
這樣會省很多電! 或者關閉32 bit的module, 只有16 bit的module!
但這些一但關了, 會影響CPU的正常運做, 所以之後run的code(or功能)要挑選過,
所以當然是軟體決定, 不然之後的code要誰保證是挑選過!
也許有人覺得硬體決定,硬體執行的部份沒舉例不好了解,
那我舉個例子: CPU的電壓,速度和溫度!
電壓高->速度快,溫度低, 電壓低->速度慢,溫度高,
我有看過一個電路能偵測溫度, 以溫度調整CPU的電壓來降溫,
但有額外的介面, 給軟體調這電路能調整電壓的範圍(包含關閉這電路)
:
: 我自己是覺得,system的東西總是牽涉廣泛,往往牽一髮而動全身
: 比如說我上次去聽清大的某教授報告(專精compiler的教授),
: 他說他們認為OS的low power機制一定要搭配Compiler,效果才會好
: 我到現在還是參不透這句話 XD
簡單地說,老王賣瓜!
他是專精compiler的教授, 他會說搭配Compiler的效果不大嗎? XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.230.224
→
140.123.103.40 08/17, , 1F
140.123.103.40 08/17, 1F
→
140.123.103.40 08/17, , 2F
140.123.103.40 08/17, 2F
討論串 (同標題文章)
CSSE 近期熱門文章
PTT數位生活區 即時熱門文章