NVIDIA/makani

Massively parallel training of machine-learning based weather and climate models

何を解決するか

Makaniは、機械学習を用いた気象・気候予測モデルのマスively parallelな学習と推論を目的としたPyTorchベースのライブラリです。数百のGPU上で大規模モデルを学習する際の課題、膨大なデータセット(例:ERA5)の管理、GPUメモリ使用量の最適化(OOMエラーの防止)に対応しています。

動作方法

Makaniは、FourCastNet3、SFNO、ViTなど多様なアーキテクチャをサポートする、新しい気象モデル開発のためのモジュール式フレームワークを提供します。100台以上のGPUにわたる学習スケーリングを実現するため、空間的モデル並列、アンサンブル並列、チャネル並列などの並列化戦略を採用しています。パフォーマンス最適化のため、自動混合精度(AMP)、ジャストインタイム(JIT)コンパイル、アクティベーションチェックポイント機能をサポートしています。学習および推論はすべて.yamlファイルで完全にカスタマイズ可能で、HDF5形式の気象データを処理し、WeatherBench2との互換性を確保するための包括的なデータ処理スクリプトも含まれています。

対象ユーザー

機械学習を用いた気象・気候予測に取り組む研究者で、高性能コンピューティング(HPC)インフラに学習をスケーリングしたい方を主なターゲットとしています。

特徴

  • 大規模スケーラビリティ:複数のモデル並列およびデータ並列方式を用いて、100台以上のGPUで学習をサポート。
  • 柔軟な設定:モデル、損失関数、最適化手法、スケジューラーをすべてYAMLファイルで完全にカスタマイズ可能。
  • モジュール式設計:カスタム学習・推論のレシピをサポートするモジュール式のメトリクスと損失関数。
  • 包括的なデータパイプライン:HDF5データ変換、統計計算、WeatherBench2統合用ツールを含む。
  • メモリ最適化:アクティベーションチェックポイントおよび特定のCUDAアロケータ設定を統合し、バッファのフラグメンテーションを軽減。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト