未踏成果報告会に参加

今日、学内で開かれた「IPA未踏ソフトウェア創造事業2006年度下期千葉PM採択プロジェクト最終成果報告会」に参加してきた。とはいっても、いろいろとやることがあったので、出たのは午後一のRubyの話だけ。笹田さんの話は過去のSWoPPなどで聞いたことがあるので若干知ってはいたけど(言語処理系は専門外だから詳しくは知らないけど)、なかなか面白い話が聞けた。
軽くまとめるとこんな感じ?
Ruby 1.9の新機能

  • YARV
  • M17N
  • Enumerator#next / Fiber / Continuation
  • Ruby to C Compiler
    • Cバイナリに変換しても速度面ではあまりうれしくない、ロード時間が減る程度
      • Ruby用のさまざまなチェックが入ったバイナリが作られるため
    • アセンブルが困難になるのは良い
  • 外部イテレータがFiberによる実装に修正された(まつもとさんの手によるとか)

1.9.1で実装済みの全ての高速化機能が適応されるわけではない。並列処理などは今回は採用されないとのこと。
YARV性能について

  • ループ処理は10倍ほど早くなる
  • Fiberを使うと50倍くらい早くなる
    • さらなる高速化も可能とか
  • CPUのタイプ(Core2、Opteron)でだいぶ性能が異なる
  • メソッド呼び出しは10倍早くなった

この辺は以前聞いたことがある。
そのほか

  • 合宿をよくやった
    • 松江で合宿すると、まつもとさんは家に帰ってしまうとか
  • Rubyのバグ・エラーをSkypeチャットなどで押し付けあうとか

IPA未踏ソフトウェア創造事業2006年度下期千葉PM採択プロジェクト最終成果報告会