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 分配器配置,以缓解缓冲区碎片化问题。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目