2008 Fiscal Year Annual Research Report
マルチコアプロセッサでのRubyプログラムの高速実行方式の開発
Project/Area Number |
19700046
|
Research Institution | Kanagawa University |
Principal Investigator |
米澤 直記 Kanagawa University, 理学部, 助手 (70312832)
|
Keywords | 超高速情報処理 / コンパイラ / プログラミング言語 / 並列処理 / マルチコアプロセッサ |
Research Abstract |
本研究では、逐次プログラムとして記述されたRubyプログラムを、並列実行するために、Rubyに付属する分散オブジェクトシステムであるdRubyを用いた。dRubyが提供する機能を利用して、複数のプロセスが同期し、変数を共有する。 平成19年度の研究に実施した、ヤコビの反復法 (問題サイズ2048、反復回数1000回) を8個のコアから構成されるマルチコアプロセッサ (3GHz Intel Xeonが2基搭載されたApple社Mac Pro) で実行する実験では、4個で3.95倍、8個で6.67倍の台数効果が得られていたが、Cで記述した同等のプログラムと比較して、実行時間が2000倍以上大きい結果となっていた。また、平成19年度には、実行性能の改善を謳ったJRubyやRuby1.9といった次世代のRuby処理系が登場した。 平成20年度において、JRubyを用いた実験を行なった。その結果、上記と同じヤコビの反復法の実行時間がRuby1.8と比較して、2プロセッサ時に6.36%、8プロセッサ時に正7.7%短縮した。ただし、1プロセッサの実行時間が約4分の1になったことにより、台数効果自体は大幅に悪化することになった。本研究ではプロセス間通信としてdRubyを利用したが、JRubyではネイティブスレッドを実現しているため、今後は並列処理の単位としてスレッドを利用することによってマルチコアプロセッサの性能が引き出せる可能性がある。 また、本研究で扱う共有メモリ型プログラムのオーバヘッド要因であるバリア同期に注目し、その同期処理に関する研究を進め、成果について論文誌で公表した。
|
Research Products
(1 results)