[#43284] [Ruby 1.9 - Bug #4456] [Open] Time#strftime で %F 指定子に大きな幅を指定した際の不具合 — tadayoshi funaba <redmine@...>

14 messages 2011/03/02

[#43317] [Ruby 1.9 - Bug #4474][Open] 複数のスレッドからトランザクションに入ろうとした場合のPStoreの挙動 — Masaki Matsushita <redmine@...>

9 messages 2011/03/06

[#43327] [Ruby 1.9 - Feature #4483][Open] PStoreをデフォルトで複数のスレッドから扱えるようにしたい — Masaki Matsushita <redmine@...>

10 messages 2011/03/08

[#43365] [Ruby 1.9 - Bug #4536][Open] 定数参照について1.8と1.9の違い — Yukihiro Matsumoto <matz@...>

11 messages 2011/03/29

[ruby-dev:43373] 単位時間あたりに消費する電力を抑えるRuby処理系

From: SASADA Koichi <ko1@...>
Date: 2011-03-31 17:30:02 UTC
List: ruby-dev #43373
 ささだです.

 Ruby 処理系が単位時間あたりに消費する電力を,極力抑えるためのパッチを
作成しましたのでお送りします(*1).先行研究 [1] ではほんの少し抑えるだけ
でしたが,本パッチを適用することで Ruby 処理系を実行する前とほぼ同様の時
間あたりの消費電力で済むようになります.

*1: 本パッチを活用するには DVFS [2] に対応したプロセッサが必要になり
    ます.例えば最近のラップトップには殆ど対応していると思います.

 まずは,実行結果です.一番簡単に電力を消費するプログラムを作るには,無
限ループ(loop{})を実行するのが簡単です.このプログラムを変更前,変更後
の Ruby 処理系で試した結果が図1 になります.

=======================================================================
図1 消費電力の推移.横軸が時間(秒),縦軸が消費電力(watt)
  評価環境:Let's note F9(Intel(R) Core(TM) i5 CPU M 540  @ 2.53GHz)
              Windows 7 上の VirtualBox 上の
              Linux 2.6.32-5-686(Debian/squeeze)
       watts up? PRO を用いて計測

	http://www.atdot.net/fp_store/f.rplxil/file.graph.png
=======================================================================

 図1の最初の大きな山(横軸 17〜37 あたり)が現在の trunk(ruby 1.9.3dev
(2011-04-01 trunk 31226) [i686-linux])で loop{} を実行しているところ
で,無限ループによって電力消費が大きくなったのがわかります.Ctrl+C に
よって無限ループをキャンセルし,その後にパッチ適用後の Ruby で同じプログ
ラムをすぐに実行していますが,電力消費がとくに増えていないことがわかりま
す.いくつかピークがありますが,裏でメール読んだりしているために消費電力
が増えているためだと思われます.


 パッチの内容は下記になります.とても大きな変更になるため(一部,互換性
を崩します),適用する際には気を付けて下さい.

	http://www.atdot.net/sp/readonly/z7mxil

 昨今の電力事情は言うまでもないですが,電力消費をおさえるための技術の開
発は急務です.本パッチがその一助になることを願ってやみません.

 以上,よろしくお願いします.


[1] 笹田耕一: Rubyのスレッド実装の改善,
第52回プログラミングシンポジウム報告集, pp. 145--152 (2011).

[2] 半導体の低消費電力技術
http://ja.wikipedia.org/wiki/%E5%8D%8A%E5%B0%8E%E4%BD%93%E3%81%AE%E4%BD%8E%E6%B6%88%E8%B2%BB%E9%9B%BB%E5%8A%9B%E6%8A%80%E8%A1%93


-- 
// SASADA Koichi at atdot dot net
//
// もちろん,このパッチが一助になるわけはないのだけれど,
// もうちょっとなんとかならないか,真面目に考えています.

In This Thread

Prev Next