学位論文要旨



No 127303
著者(漢字) 関口,智嗣
著者(英字)
著者(カナ) セキグチ,サトシ
標題(和) 科学技術計算用高次グリッドミドルウェアの研究
標題(洋)
報告番号 127303
報告番号 甲27303
学位授与日 2011.03.24
学位種別 課程博士
学位種類 博士(情報理工学)
学位記番号 博情第341号
研究科 情報理工学系研究科
専攻 創造情報学専攻
論文審査委員 主査: 東京大学 教授 稲葉,雅幸
 東京大学 教授 平木,敬
 東京大学 教授 米澤,明憲
 東京大学 教授 石川,裕
 東京大学 教授 浅見,徹
 東京大学 教授 杉原,正顯
内容要旨 要旨を表示する

グリッドは動的に変化する複数の組織から提供された計算リソースを共有することにより問題解決を目指した分散システムである.1990年代後半から大規模な計算処理や大量のデータを保存・利用するための手段として開発されてきた.その結果 Globus Toolkitなどの基盤グリッドミドルウェアの開発により地球規模に分散する計算リソースの共有は可能となった.一方,プログラミングモデルとしては並列システムで標準的に用いられているMPI(Message Passing Interface)を拡張した提案があったが,グリッドのように異なる組織間で同時に多数のCPUを予約して利用することが現実的に困難であった.本研究ではグリッドにおけるプログラミングモデルを確立することを目的として,分散システムで標準的に用いられているRPC(Remote Procedure Call)に基づいたGridRPCを提案し,基盤グリッドミドルウェアと協調した高次ミドルウェアNinfとして実装を行い,実証的な評価を通じて有効性を示した.

GridRPCは単純な通信モデルに基づくためプログラムの変更が小規模で済み,また逐次処理プログラムを順次並列化させることが可能であるなどユーザに対する親和性が高い.GridRPCがグリッド特有の非均質性や不安定性などの課題に対処するためには以下の3つの機能を基盤グリッドミドルウェアと協調して実現することが課題である.

(1)計算途中で変動する計算量や利用可能な計算リソースの増減に対応して呼び出す手続きの数やサイズを動的に制御する適応性(Adaptability),

(2)計算リソースやネットワークなどで障害が発生しても計算を継続できるような頑健性(Sustainability),

(3)大規模計算を実施する際に十分な性能が確保できるような効率性(Scalability).

Ninfの実装にあたってはこれらの課題を達成するため新たに技術問題の解決を行った.適応性の確保のためにサーバ側だけにスタブを設定するアーキテクチャの工夫,関数ハンドラの導入により呼び出す手続きと計算リソースを分離,GridRPC+MPIのハイブリッドプログラミングなどを実現した.また,頑健性の確保のためにGlobus Toolkitのタイムアウトとハートビート機能を導入し,プログラム側にシステムからの情報を提供することで予期される障害に対する耐故障性を高めた.さらに効率性の確保のために関数ハンドラの複数同時立ち上げなど初期化手続きの簡略化,不必要なデータ転送の圧縮/削減など実装上の工夫を施した.

この結果,Ninfを用いて大規模応用プログラムを書き換えてグリッドのテストベッドで実行し,プログラム変更のためのコストが少ないこと,耐障害性の導入により長時間実行が可能であること,GridRPC+MPIのハイブリッドプログラミングの有効性を示すことに成功した.さらに,標準規格化の活動を通じてGridRPC APIをグリッドにおける科学技術計算のプログラミングモデルとして確立することに発展させた.

本研究での成果は任意のプログラムに対して適用できる並列/分散プログラミングモデルではないが,グリッドコンピューティングのように複数のコンピューティングリソースを自在に組み合わせて計算を継続的に実行するような場合には極めて有効な手法である。また,GEO Gridシステムはあくまでも統合の一例でありこのまま一般化することが困難であるが,E-サイエンスに求められる基本機能を具備しているため他の対象領域にも適用可能である。

このように,科学技術計算用高次グリッドミドルウェア研究を通じてグリッドコンピューティングの可能性を大きく開拓し,グリッドの発展に顕著な貢献を行った。

審査要旨 要旨を表示する

グリッドは,動的に変化する複数の組織から提供された計算リソースを共有することにより問題解決を目指した分散システムである.1990年代後半から大規模な計算処理や大量のデータを保存・利用するための手段として開発されてきた.その結果,Globus Toolkit などの基盤グリッドミドルウェアの開発により地球規模に分散する計算リソースの共有は可能となった.一方,プログラミングモデルとしては並列システムで標準的に用いられている MPI (Message Passing Interface)を拡張した提案があったが,グリッドのように異なる組織間で同時に多数のCPUを予約して利用することは現実には困難であった.これに対して,本論文は「科学技術計算用高次グリッドミドルウェアの研究」と題し,グリッドにおける科学技術計算用プログラミングモデルを確立することを目的として,分散システムで標準的に用いられている RPC (Remote Procedure Call)に基づいた GridRPCを提案し,このプログラミングモデルを基盤グリッドミドルウェアと協調した高次ミドルウェア Ninf (Network INFormation library)として実装し,その有効性を実証したものである.

本論文は研究の背景を述べた第1章「序論」と総括を述べた第6章「結論」を含め6章から構成される.

第2章「グリッドにおける科学技術計算用プログラミングモデル GridRPC」では,グリッドにおけるプログラミングモデルに期待される要件を整理し,既存のシステム例に関して要件の充足度を比較し得失を論じている.そして,グリッドのように異なる組織間で同時に多数のCPUを利用して長時間の科学技術計算を実行するためには遠隔手続呼び出し RPCに基づいたモデル (GridRPC) が適切であることを示している.

第3章「GridRPCを実現する高次グリッドミドルウェア Ninfの設計と実装」では,グリッド基盤ミドルウェアのGlobus Toolkitの計算実行モデルを示した上で,これと協調して動作するGridRPCを実現する高次グリッドミドルウェア Ninfの設計と実装について述べている.Ninfの実装にあたってはグリッド特有の非均質性や不安定性などに対処するため,(1) 計算途中で変動する計算量や利用可能な計算リソースの増減に対応して呼び出す手続きの数やサイズを動的に制御する適応性 (Adaptability),(2) 計算リソースやネットワークなどで障害が発生しても計算を継続できるような頑健性 (Sustainability),(3) 大規模計算を実施する際に十分な性能が確保できるような効率性 (Scalability)を達成する必要があることが述べられ,そのために新たに技術問題の解決を行ったことが述べられている.具体的には,適応性の確保のために,サーバ側だけにスタブを設定するアーキテクチャの工夫,関数ハンドラの導入により呼び出す手続きと計算リソースを分離,GridRPC+MPIのハイブリッドプログラミングなどを実現したこと,また,頑健性の確保のために,Globus Toolkitのタイムアウトとハートビート機能を導入し,プログラム側にシステムからの情報を提供することで予期される障害に対する耐故障性を高めたこと,さらに,効率性の確保のために関数ハンドラの複数同時立ち上げなど初期化手続きの簡略化,不必要なデータ転送の圧縮/削減など実装上の工夫を施したことなどが述べられている.

第4章「大規模アプリケーションを用いた GridRPCの有効性と Ninfの評価」では,Ninfを用いて,大規模応用プログラムを書き換えてグリッドのテストベッドで実行し,プログラム変更のためのコストが少ないこと,耐障害性の導入により長時間実行が可能であること,GridRPC+MPIのハイブリッドプログラミングの有効性を示している.

第5章「GridRPCの標準化を通じた技術の普及」では,標準化団体のGGF (Global Grid Forum,後のOpen Grid Forum)における標準規格化の活動を通じて,GridRPC APIをグリッドにおける科学技術計算用プログラミングモデルとして確立することに貢献したことが述べられている.また,現在開発が進められている地球観測衛星データを用いた GEO Grid へのGridRPCの適用可能性についても述べている.

以上を要するに,本論文は,グリッドのように複数の計算リソースを自在に組み合わせて計算を継続的に実行するような場合に有効な科学技術計算用プログラミングモデル GridRPCを確立し,その有用性を実証したものであり,情報理工学に関する研究的意義と共に,情報理工学における創造的実践に関して価値が認められる.よって本論文は,博士 (情報理工学)の学位請求論文として合格と認められる.

UTokyo Repositoryリンク