ホーム
Inmos社について
occam
Transputer
並列Java/C
営業品目
コンタクト

並列Javaとは

KRoCプロジェクトがスタートして2-3年した頃にオランダのTwente大学とKent大学が共にJavaへのプロセスモデル、並列モデル導入に注目し始めた。オブジェクト指向の言語はオブジェクトを参照して更に新しいオブジェクトを生成するには向いているが、プロセスモデルは非常に弱い。

もし
Javaプログラムを並列化するにはwait, notify, notifiAll, Synchronized 等を使ってマルチスレッド化するしかないこれらのコマンドは余りにも低レベル、つまりOSレベルのコマンドでありプログラマーが使うのは大変危険であると力説しはじめた。それが1996年のWorkshopであった。

確かにその通りでoccamの場合は一切OSレベルの操作を考えなくても並列のモデルが構築できる。Twente大学のGerald Hilderinkoccamのコンストラクター(SEQ, PAR, ALT, PRI, etc)を導入したCTJ(Communicating Threads Java)を開発した。これは当時ヨーロッパでは大変な興奮が起こった。

その後
Kent大学の学生であったPaul AustinJCSPを開発した。何故JCSPなのかについてかはPeter Welch論文(.ps)を見てください。Javamonitorのもつ問題点とJCSPの利点について書かれています。

JCSP/CTJは微妙に異なるが背景にあるCSPモデルは同じである。ここで強調しなくてはならない点はJCSP/CTJJavaClass Libraryライブラリであり特殊なJavaではないことである。両者の比較はNan C. Schaller資料が参考になります。

JCSP/CTJは米国の大学教育で認識されつつあります。CMU, USU Colgate-U RITPace-U等で実施されています。USUDyke Stilesの様にoccamのハーネスをJCSPに移植することはJavaを並列化する際に非常に重要なコンセプトです。

教育用資料で
Peter Welchが用意したものをここ(Postscript)に添付します。UKではBristol大学、Kent大学を始め、かなり多くの大学で採用されています。

ノルウェーの
Teig氏がまとめたJCSP/CCSPに関してよく整理されたサイトがあります。ご覧になってください。

2002/4/27JCSPKent大学 のプロジェクトから離れQuickstone Technologies社から発売されることになりました。これによってJavaネットワーキングに大きな変革がもたらされると思います。


更にoccamのKernelをCに移植したCCSPも商品化される 予定です。現在CCSPは4つのMPUで並列処理をさせた場合98%のリニアリティが確認されています。今後SMPサーバ分野だけでなく幅広く組み込型システムにも有望な期待がよせられています。