• 研究課題をさがす
  • 研究者をさがす
  • KAKENの使い方
  1. 課題ページに戻る

2007 年度 実績報告書

マルチコアプロセッサでのRubyプログラムの高速実行方式の開発

研究課題

研究課題/領域番号 19700046
研究機関神奈川大学

研究代表者

米澤 直記  神奈川大学, 理学部, 助手 (70312832)

キーワード超高速情報処理 / コンパイラ / プログラミング言語 / 並列処理 / マルチコアプロセッサ
研究概要

本研究では、逐次プログラムとして記述されたRubyプログラムを、並列実行するために、Rubyに付属する分散オブジェクトシステムであるdRubyを用いた。dRubyが提供する機能を利用して、複数のプロセスが同期し、変数を共有する方式を確立し、メソッドとして実装した。
続いて、逐次プログラムを並列実行可能なプログラムに変換するトランスレータを実装した。このトランスレータはプロセス間通信が必要な箇所に上記のメソッドを生成する。
上記の開発と並行して、ヤコビの反復法(問題サイズ2,048、反復回数1,000回)を手動変換し、8個のコアから構成されるマルチコアプロセッサ(3GHz Intel Xeonが2基搭載されたApple社Mac Pro)で実行した。その結果、コア数1個の実行時間に対して、4個で3.95倍、8個で6.67倍の台数効果が得られた。
ただし、Cプログラムで記述したヤコビの反復法の実行時間と比較すると、Rubyの実行時間が2000倍以上大きい結果となった。一般に、コンパイル方式のCと比較してインタプリタ方式のRubyが実行時間が大きいため、この結果は想定内である。Rubyは、プログラムの開発に要する時間が短いという特長があるため、実行時間だけではなく、開発時間を含めた総合的な評価が必要であると考える。
得られた結果と本研究の構想を、日本Ruby会議2007(2007年6月9、10日)で発表した。
また、平成19年度において、JRuby、Ruby1.9といった次世代のRuby処理系が登場し、いずれも実行性能の改善を謳っている。今後の課題として、これらの処理系を用いて評価することが挙げられる。

URL: 

公開日: 2010-02-04   更新日: 2016-04-21  

サービス概要 検索マニュアル よくある質問 お知らせ 利用規程 科研費による研究の帰属

Powered by NII kakenhi