Real World Computing Project 1992-2001 10年史 RWC NEWS
 RWCP10年史 > RWC NEWS(一覧) > Vol. 4  Jan. 1996
Vol. 4  Jan. 1996

研究者の横顔

John Sargeant

-マンチェスター大学 計算機科学科-


プロフィール
生年月日:1959年11月27日
出身地:ドンカスター、イギリス
略歴: 1981年 マンチェスター大学 計算機科学及び数学 学士課程修了
1982年 マンチェスター大学 計算機科学 修士課程修了
1985年 マンチェスター大学 計算機科学 博士課程修了
博士論文“Stored Data Structures for Dataflow Computing”
趣味: 1) 体のフィットネスのため、ランニング、ハイキング等
2) 心のフィットネスのため、チェス
3) 1)と2) に疲れた時の、一杯のビール

 私の研究の最終目標は、並列コンピューティングを普通のプログラム作成と同じように簡単にすることです。そのためには、並列性は暗黙の内に実行されるものである必要があります。つまり、システムは、並列マシンへのプログラムの効率的なマッピングを管理できなくてはいけません。それは実現可能であり、これによってもたらされる恩恵は、きわめて大きいと思われます。コンピュータの設計者は、ハードウェアの自然な並列性をいっそう有効に活用できるようになるでしょう。プログラムは、逐次性をそれほど気にしなくてもよいさらに高レベルの言語で作成されるようになります。アプリケーション自身が、並列性をモデル化するのです。

 私の研究について説明する前に、まずは私自身の経歴を紹介することにしましょう。

 1981年、大学院の学生になってすぐに、私は、マンチェスタ・データフロー・プロジェクトに参加できるという幸運に恵まれました。データフローの基本的な考え方は、プログラムが単なる命令の羅列でなく、2次元の有向グラフとして表現できるというものです。マンチェスタ・データフロー・マシンは、データフロー・グラフを直接実行する最初のプロトタイプ・マシンの一つでした。基本的なコンセプトはうまく動作しましたが、克服すべき課題もまた山積していました。その一つは、あるタスクを実行するのに必要なデータフロー・コードの効率が、命令数という観点でフォンノイマン型のコードよりはるかに劣るという点でした。私は、その計算機で使用していた関数型言語SISALのコンパイラに多くの最適化を行うことによって、この問題を解決しました。その一方では、他の研究者たちが、ハードウェアの非効率という問題の解決に取り組んでいました。筑波にある電子技術総合研究所(ETL)グループによって、Sigma-1やEM-4のような一連のデータフロー・マシンやハイブリッドマシンが構築されました。私たちは1983年頃から非公式にETLグループと共同で作業し、私自身1986年以降、筑波を数回訪れています。

 1980年代後期、私たちは、従来の並列マシンにより適した、粒度の粗い計算モデルを研究しました。しかし、より高いレベルではデータフロー表現はやはり有用です。また、これと並行して、米国の他のSISAL研究グループ(中間コードとしてデータフロー表現を使用)によって、SISALプログラムを共有メモリ・マルチプロセッサ上で同等のFORTRANプログラムに匹敵あるいは凌駕する速度で実行できることが実証されました。これによって、SISALのような本質的に並列性を有する関数型言語も、きわめて高い効率を達成できることが証明されたのです。

 一方、SISAL言語は一般利用には柔軟性に欠けるため、結局私たちは新しい言語を設計することになりました。1990年から1994年にかけて、私は、United Functions and Objects(UFO)言語を設計・実現しました。これは、関数型とオブジェクト指向のプログラミング技術の最も良い部分を統合しようという試みです。SISAL同様、UFOにも配列とループ構造があり、数値計算にきわめて適しています。UFOは、利用可能な記号処理言語の中でもっとも進んだ言語の一つであり、特に数値処理と記号処理の両方が要求されるアプリケーションに適しています。また、並行オブジェクト指向プログラミングからいろいろな考え方を取り込んでいます。UFOがどの程度実践的に使えるのか十分に知るために、コンパイラを含む、ほとんどすべてのソフトウェア・プログラムをUFOで書きました。

 マンチェスター大学は、1994年後期に再委託研究の実施大学としてRWCプロジェクトに参加したので、ちょうど丸1年RWCに係わっていることになります。UFO プロジェクトには、私のほか、最初のマンチェスタ・データフロー・プロジェクトに参加していた Chris KirkhamとIan Watson、それに2人の若い研究者と数名の学生が参加しています。

 RWCにおける私たちの究極の目標は、RWCマシンのための高効率の並列実装を実現することです。現在、私たちは、独自のUflow中間形式を利用して最適化コンパイルの研究を進めています。Uflow中間形式は、プログラムの画期的なデータフロー表現です。並列実装の研究は、現在のところあいにく実際に使用できる有用な並列マシンがないため、未だ本格的研究の前段階にあるといえます。近い将来この状況から脱却できるよう期待すると共に、RWCによって私たちのアイデアを実現する上できわめて有意義な機会が得られたことを感謝いたします。

 

Real World Computing Project (1992-2001)  RWCPメモリアル