研究概要 |
並列関数型言語として,Call-by-Valueに基づく逐次関数型言語とCall-by-Needに基づく遅延評価機能を備えた逐次関数型言語を並列化した2種類の並列関数型言語の設計とその処理系の実現に関する研究を行っている。高性能並列処理系の実現に当たって問題となるプロセス過剰生成問題の解決には,研究代表者によって提案されているタスク遅延生成法であるスティール評価法(SHE : Steal-Help Evaluation Strategy)を用い,処理系の開発のために8CPUの共有メモリ型並列計算機PRIMEPOWR600(富士通製)を購入・設置し,処理系の試作に着手している。 (1)Call-by-Value型の並列関数型言語とその並列処理系 スティール評価法による並列処理系作成のため,SSTマシンと呼ぶ仮想並列マシンを設計し,その処理系を汎用性のあるSSTマシンライブラリとして作成した。Scheme言語を並列化した並列Scheme言語を設計し,その高性能処理系をSSTマシンライブラリを利用して作成した。 (2)遅延評価機能を備えた並列関数型言語とその並列処理系 遅延評価機能を備えた簡単な関数型言語の処理系を作成し,それを基にしてスティール評価法による並列処理系の試作を行った。これは,関数遅延評価とタスク遅延生成機能を備えた並列処理系を共有メモリアーキテクチャで作成した世界最初の試みである。ベンチマークプログラムにより実験評価を行い,好ましい結果が得られている。その他,ISO標準Lisp言語を基にした並列言語についても検討を開始している。
|