パーシャルメッセージロギングを改善する耐故障性実現フレームワーク  [in Japanese] Fault Tolerance Framework to Improve Partial Message Logging  [in Japanese]

Access this Article

Search this Article

Abstract

近年のスーパーコンピュータにおけるノード数は近年ますます増加の一途をたどっている.それに伴い HPC システムにおける故障間隔は無視できない程に短くなり,長時間かかるアプリケーションの実行などにおいてはそれが深刻な問題になり得る.そしてその問題を解決するための耐故障性実現機構として連携チェックポインティングやメッセージロギング方式が提案されている.しかし,連携チェックポインティングでは故障発生時に全てのプロセスがチェックポイントまでロールバックするためにリソースの無駄を生じる.そして一方のメッセージロギング方式では,全ての通信ログを取って置かなければならないため,大きな通信オーバーヘッドがかかってしまう.その両方のデメリットを緩和するための方法として,プロセスをいくつかのクラスタに分割し,そのクラスタ内では連携チェックポインティング,クラスタ間ではメッセージロギングを採用するパーシャルメッセージロギングが提案されている.その中で本研究では,実行時の情報を用いて先行研究の問題点を解決し改善するためのフレームワークを提案する.まず先行研究では,プロセスのクラスタリングを行う為に必要な実行時の通信情報が与えられることを前提としているが,本フレームワークでは,アプリケーションのメインのループを指定してもらい,そのループの通信を解析することで適切なクラスタリングを取得する.また,先行研究ではグラフパーティショニングツールを用いているが,グラフバーティニングツールは汎用的なグラフ分割を対象にしており,プロセスのクラスタリングには比較的長い時間を要する.そこで本研究では,プロセスがどのようにノードに割り当てられているかの情報を利用することでより単純で高速にプロセスを分割するアルゴリズムを本フレームワーク上に実装する.そして,単純なステンシル計算をシミュレートするグラフ分割で提案手法の評価を行う.Modern supercomputers consists of more and more nodes. That makes mean time between failure (MTBF) shorter than that of current situation. If MTBF becomes less, application that takes much time can not be done because of failure. To cope with the problem, many fault tolerance mechanisms are proposed. Coordinated checkpointing and message logging are typical mechanisms to achieve fault tolerance. However, coordinated checkpointing forces all processes to roll back to last checkpoint when occuring failure and message logging imposes large overhead on communication. Partial message logging is proposed to alleviate those disadvantages. The method splits processes into some groups and takes checkpoints within a group and logs data of communication between groups. Due to this method, the processes which have to be restarted can be limited from all processes to processes within a group. In this research, we proposes a framework to improve partial message logging by analyzing application behavior at runtime. Prior research assumes whole communication pattern of application, so application have to be executed in advance. Our framework analyzes main loop of HPC application which has specified by application programmer. In addition, prior research uses graph partitioning tool to group processes, but graph partitioning tool is designed for generic graph partitioning problems and take longer time to partition processes. Therefore, we proposes simple and faster grouping algorithm on the framework utilize mapping between processes and nodes. Proposed method is evaluated through partitioning communication graph which simulates simple stencil computation.

Journal

  • 研究報告ハイパフォーマンスコンピューティング(HPC)

    研究報告ハイパフォーマンスコンピューティング(HPC) 2012-HPC-137(17), 1-6, 2012-12-06

Codes

  • NII Article ID (NAID)
    110009490665
  • NII NACSIS-CAT ID (NCID)
    AN10463942
  • Text Lang
    JPN
  • Article Type
    Technical Report
  • Data Source
    NII-ELS  IPSJ 
Page Top