本研究の目的は、細粒度並列処理モデルの一つであるデータフロー計算方式と、既存の計算機方式の利点を統合することにより、高い実行性能と高レベルのプログラミングを同時に実現可能な計算環境を開発することである。今年度は、九州大学で研究開発された高レベルプログラミング言語を、米国デラウェア大学で研究開発されたマルチスレッドアーキテクチャEARTHへ実装する手法についてまとめた。 さらに、そのマルチスレッド実行環境を発展させ、細粒度スレッドをプロセッサ割り当ての基本単位とする実行環境を提供する並列分散オペレーティングシステムCEFOS(Communication-Execution Fusion OS)を提案した。CEFOSの細粒度スレッドは、POSIX(Portable Operating System on UNIX)のPthreadsといった多くのオペレーティングシステム上で利用可能なマルチスレッド実行環境が提供するスレッドよりもさらに粒度が小さく、原則として軌道後は走り切る命令列とすることで、以下の特徴を持つ効率の良い多重実行環境の実現を目指している: 非同期処理:ネットワークからの受信処理やGUIを持つアプリケーションのユーザからの入力処理といった、実行タイミングを静的に決定することが出来ない処理を自然に扱うことが出来る。 遅延の隠蔽:入出力処理や遠隔データ参照など、実際の処理要求を出してから結果を受け取るまでの遅延時間が長い処理の場合は、処理結果を待つ間に、他の実行可能なスレッドにCPUを割り当てることにより、見掛け上遅延を隠すことができCPUの利用効率も向上する。 スケジューリング:スレッド間の実行順序に半順序関係しかなく直接の順序関係がない場合、スレッド同士の実行順序は任意である。この任意性により、実行状況に合わせた柔軟なスケジューリングが促進された。
|