タグ

jrubyに関するNabetaniのブックマーク (3)

  • JRuby は実行時最適化によって 50倍以上速くなり、CRuby を華麗に抜き去る場合がある。 - Qiita

    先日、 JRuby は JIT によって 10倍ぐらい速くなる場合がある。 という記事を書いたんだけど、測りなおしたらそんなもんじゃなかったことがわかった。 まずはグラフ。対数目盛に注意。 わけのわからないところに横線があるが、一2倍になっている。 今回は、【「とある無駄な計算」10回セット】を200回行った。 「とある無駄な計算」は、前回と同じ。 前回は「とある無駄な計算」を20回だったので、計算の規模は百倍になる。 前回は平均をとったが、今回は平均はとっていない。 という辺りが前回との違い。 グラフを見ると、あまり出入りのない CRuby に対し、JRuby は出入りが多い。 グラフが凸凹しているのは、測定しているのが生の時間だから、他のプロセスがCPUを専有していたのかもしれないんだけど、JRuby と CRuby の傾向の違いは読み取れると言っていいと思う。 横軸の回数は、【10

    JRuby は実行時最適化によって 50倍以上速くなり、CRuby を華麗に抜き去る場合がある。 - Qiita
    Nabetani
    Nabetani 2015/08/30
    しつこく測ったら、JRuby がruby を華麗に抜き去っていた。
  • JRuby は JIT によって 10倍ぐらい速くなる場合がある。 - Qiita

    昨日書いたベンチマークの記事 http://qiita.com/Nabetani/items/2d054512c45990dd1235 で、JRuby の場合の測定時間の変化が面白かったので、変化だけを調べてみた。 結論:JITすごい。 追記: もう少し調べた記事を書いた。 JRuby は実行時最適化によって 50倍以上速くなり、CRuby を華麗に抜き去る場合がある。を参照 やってみたことは、 「ちょっと時間がかかる処理を、時間を計りながら20回行う」というプログラムをJRubyで3回、CRuby で1回 動かす、という作業。 で。 まずはグラフ。 JRuby に注目すると。 どの trial も初回が一番遅い。 2回目はいきなり半分ぐらいの時間で処理が終わる。 5回目で遅くなり、6回目以降は大きな山はないもののどんどん速くなる。 10〜15回目ぐらいで落ち着く感じ。 5回目の山は、JI

    JRuby は JIT によって 10倍ぐらい速くなる場合がある。 - Qiita
    Nabetani
    Nabetani 2015/08/28
    JITによってどんどん速くなるさまをグラフにしてみた。
  • jruby9000 が ruby2.2.3 よりも3倍以上速いこともある。

    以前、 http://qiita.com/Nabetani/items/9776d99d09476d07c9e2 と http://qiita.com/Nabetani/items/47d357cc7f80f5c42f0d でベンチマークの記事を書いたんだけど、2.2.3 とか jruby9000 が出ているのでまた勝手なベンチマークをとってみた。 当初ここに書いた記事では JRuby が Java7 になっていたので、Java8で測りなおして追記した。 「3倍以上」より「4倍以上」が適切なようなので、タイトルも変えてみた。 まずはグラフ。 横軸は時間なので、長いほうが遅い。 simple_lambda の方は、jruby がやけに頑張っている。 jじゃないrubyでは、新しくなるほど速くなっていて、開発者の皆様ありがとうございますという感じ。 対照的に、complex_string では

    jruby9000 が ruby2.2.3 よりも3倍以上速いこともある。
    Nabetani
    Nabetani 2015/08/28
    JRuby が Java7 だったので、Java8 で測りなおして追記した。Java8 速い。
  • 1