【レポート】

Rubyの実行環境、Linuxでベンチマークを取ったら…

    後藤大地  [2010/07/22]

    Ruby - A Programmer's Best Friend

    The Great Ruby Shootout (July 2010)にLinuxにおけるRuby実行環境のベンチマーク結果が掲載されている。ベンチマークが実施されたのはUbuntu 10.4 LTS x86_64版、Intel Core 2 Quad Q6600、8GBメモリの環境。Ruby Benchmark Suiteの提供しているベンチマークのうちいくつかを抜粋して実施したという。

    公開されているデータはひとつの指針にすぎないが、それぞれのRuby実行環境の特徴がでており参考になる。比較に使われたRuby実行環境は次の8つ。

    • Ruby 1.8.7 p299
    • Ruby 1.9.1 p378
    • Ruby 1.9.2 RC2
    • IronRuby 1.0 (Mono 2.4.4)
    • JRuby 1.5.1 (Java HotSpot(TM) 64-Bit Server VM 1.6.0_20、-fastおよび-serverオプションを指定)
    • MagLev (rev 23832)
    • Ruby Enterprise Edition 2010.02
    • Rubinius 1.0.1

    ベンチマーク結果の概要は次のとおり。

    実行時間比較

    The Great Ruby Shootout (July 2010) - Zen and the Art of Programmingより抜粋

    • Ruby 1.9、JRuby、MagLevが同じレベルで優れた性能を発揮している。
    • Ruby 1.9.2はRuby 1.9.1よりも若干性能が向上している。
    • Ruby 1.9はRuby 1.8よりも高速。
    • Rubiniusはパフォーマンス競争ではまだ改善の余地がある。
    • Ruby Enterprise EditionはRuby 1.8.7よりは若干高速。
    • Monoで動作しているIronRubyの性能はあまりよくない。

    メモリ消費比較

    The Great Ruby Shootout (July 2010) - Zen and the Art of Programmingより抜粋

    • Ruby 1.9.2がもっともメモリ使用量が少ない。
    • JRubyはかなり大量のメモリを消費する。

    Linux/Windows比較

    The Great Ruby Shootout (July 2010) - Zen and the Art of Programmingより抜粋

    以前、まったく同じH/Wを使ってWindows Rubyのベンチマーク計測が実施されているため、Linux版とWindows版との比較も合わせて掲載されている。結果を見るとどの実装であってもLinux版の方が高速に動作しているほか、結果のブレがすくない。

    どの実装もバージョンを経るごとに性能が向上しており、以前はCRubyがもっとも高速だったが、そこにJRubyとMagLevが食い込んでいる。また、RubiniusもRuby Enterprise Editionも同じレベルへと近づきつつあることがわかるという。なお、ここでの試験結果はサーバのような用途での利用を想定したもの。また公開されているベンチマークはあくまでもひとつの側面を表すもので、この結果がそのままアプリケーションの性能に現れるわけではないことに注意が必要。

    関連記事

    関連サイト

    関連したタグ

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン