next up previous
Next: 並列推論マシン・オペレーティング・システム PIMOS Up: 無題 Previous: 並列推論マシン PIM

並列論理型言語 KL1 処理系

並列論理型言語 KL1 を効率的に並列に実行するための、プログラム言語シス テムである。同一の言語仕様と共通する処理方式を用いながら、各モデルの PIM に適合した最適化を施している。

特徴的な処理は単一プロセサ内の逐次実行に関する処理と、プロセサ間に渡る 処理がある。プロセサ内の処理については、KL1プログラムをいったん抽象機 械語KL1/Bに最適化コンパイルし、これを各モデルのプロセサに適合した方式 (機械語へのコンパイルや、マイクロコードによる解釈実行) で実行する方法 を取っている。これによって言語仕様の共通化を容易にすると同時に、処理系 構築の手間を削減している。

KL1言語処理系のコンパイル方式

並列処理は共有メモリ・クラスタ内の処理と、クラスタ間に渡る処理に大別さ れる。クラスタ内処理においては、メモリ・アクセスの競合を調停しつつ、自 動的な負荷分散を施し、プログラマが細かいレベルでの負荷分散を指定する必 要を除去している。一方クラスタ間処理においては、プロセスの分散はプログ ラム中の指定に従うが、データや実行コードの分配を自動的に行ない、不要に なった領域の再利用も自動的に行なう機構を持っている。これらの並列処理機 構についても、アルゴリズムはもちろん、具体的なコードも各モデルに共通す るシステムを用意し、モデルごとに最適な方法でコンパイルなどして実装して いる。