NVIDIA/makani

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

解決的問題

Makani 是一個基於 PyTorch 的程式庫,專為機器學習氣象與氣候預測模型的大規模平行訓練與推論而設計。它解決了在數百張 GPU 上訓練大型模型的挑戰,管理龐大資料集(如 ERA5),以及優化 GPU 記憶體使用以防止記憶體不足(OOM)錯誤的問題。

工作原理

Makani 提供模組化框架,用於開發新型氣象模型,支援多種架構,如 FourCastNet3、SFNO 和 ViT。它採用多種平行策略,可在 100+ GPU 上擴展訓練,包括空間模型平行、集成平行與通道平行。為優化效能,支援自動混合精度(AMP)、即時(JIT)編譯與激活檢查點。訓練與推論可透過 .yaml 檔案完全配置,該程式庫亦包含一整套完整的資料處理腳本,用於處理 HDF5 格式的氣象資料,並確保與 WeatherBench2 相容。

適用對象

主要針對需要將機器學習氣象與氣候預測研究擴展至高效能運算(HPC)基礎設施的研究人員。

主要特色

  • 大規模可擴展性:透過多種模型平行與資料平行方式,支援在 100+ GPU 上進行訓練。
  • 靈活配置:透過 YAML 檔案完全配置模型、損失函數、最佳化器與排程器。
  • 模組化設計:模組化指標與損失函數,支援自訂訓練與推論方案。
  • 完整的資料流程:包含 HDF5 資料轉換、統計計算與 WeatherBench2 集成工具。
  • 記憶體優化:整合激活檢查點與特定 CUDA 分配器設定,以緩解緩衝區碎片化問題。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案