GPUアプリケーションに対するシステムレベルのチェックポイント技術の確立
Project/Area Number |
20K19807
|
Research Category |
Grant-in-Aid for Early-Career Scientists
|
Allocation Type | Multi-year Fund |
Review Section |
Basic Section 60090:High performance computing-related
|
Research Institution | University of Tsukuba |
Principal Investigator |
額田 彰 筑波大学, 計算科学研究センター, 教授 (40545688)
|
Project Period (FY) |
2020-04-01 – 2024-03-31
|
Project Status |
Granted (Fiscal Year 2022)
|
Budget Amount *help |
¥4,290,000 (Direct Cost: ¥3,300,000、Indirect Cost: ¥990,000)
Fiscal Year 2021: ¥2,080,000 (Direct Cost: ¥1,600,000、Indirect Cost: ¥480,000)
Fiscal Year 2020: ¥2,210,000 (Direct Cost: ¥1,700,000、Indirect Cost: ¥510,000)
|
Keywords | GPU / チェックポイント / CUDA / GPUコンピューティング |
Outline of Research at the Start |
GPU は高性能計算や深層学習の分野に広く普及し、アプリケーションはますます増え続け巨大化している。アプリケーションの実行の中断・再開を可能とするチェックポイントは、耐故障用途や長時間実行、共用計算機資源の有効利用のために不可欠な技術である。特にアプリケーションを使うユーザに一切負担がないシステムレベル・チェックポイントの有用性は極めて高い。それにも関わらず、GPU搭載システムではこれまでチェックポイント機能が全く実現できていない。本研究ではGPUアプリケーションのチェックポイント機能を最小の実行時間オーバヘッドで実現する方法を解明し、実システム上で機能的および性能的な有用性を実証する。
|
Outline of Annual Research Achievements |
GPUアプリケーションを対象とするシステムレベルチェックポイントの実現という研究課題でこれまでNVIDIAのGPUとCUDA C/C++というプログラミング手法を対象としてきた。アプリケーションのバイナリーをそのまま使い、動的リンクされるライブラリ側をチェックポイント機能を追加したものに入れ替えることによって透過的なチェックポイントを実現している。本手法はOpenCLやAMDのHIPのような同等のAPIを用いるアプリケーションについても適用可能であると考えられる。一方でOpenACC、OpenMPなどのディレクティブ挿入によるGPUプログラミングが主流となってきている。これらのアプリケーションバイナリーに対してチェックポイント機能を組み込んだランタイムライブラリを実装することは理論的には可能であるが、CUDA APIのように公開されたAPIではないため解析に時間がかかり事実上不可能である。またこれらのプログラミング手法ではより容易になるUnified memoryの使用が推奨されている。このUnified memoryはホスト側でもデバイス側でも有効なアドレスを持ち、これがリスタート時にGPU側のアドレス空間を再現するということを難しくする。
|
Current Status of Research Progress |
Current Status of Research Progress
3: Progress in research has been slightly delayed.
Reason
本研究で導入した機器の修理がコロナ禍の工場封鎖や不安定な物流などの影響を受けて時間がかかっている。管理者権限が必要な評価はこれまで古い世代のGPUを搭載するシステムで行ってきたが、機材が戻ってき次第評価を行う。
|
Strategy for Future Research Activity |
令和5年度は最終年度として、これまで研究してきた各種技術を最新のハードウェア及びソフトウェア環境で評価を行い、互換性等に問題ないかの確認を行う。またそれらを拡張することによって可能となる関連技術についての検討を行う予定である。
|
Report
(3 results)
Research Products
(7 results)