SuperAPI AI 工具集

megatron-memory-estimator

通用与其它

查看项目

更新于 10-16 04:30

技能介绍

用途:估算基于 Megatron 的 MoE(混合专家)与稠密模型在训练时的 GPU 显存占用,帮助判断模型能否放入现有显卡、选择并行策略。

主要能力:从 HuggingFace 模型路径或本地 config.json 自动转换配置并估算显存;支持张量并行(--tp)、流水线并行(--pp)、专家并行(--ep)、上下文并行(--cp)、专家张量并行(--etp)、虚拟流水线并行(--vpp)、微批大小(--micro-batch-size)、序列长度(--seq-length)、GPU 总数(--num-gpus)、激活重计算(--recompute-granularity full/selective)等参数;可输出详细分解(--verbose)或 JSON(--json)。输出包含各流水线阶段的参数、激活、权重+梯度、优化器状态及总显存,并给出是否适配 A100 40GB/80GB、H100、H200 等。

使用方式:主脚本为 scripts/estimate_from_hf.py。示例:python scripts/estimate_from_hf.py deepseek-ai/DeepSeek-V3 --tp 4 --pp 4 --ep 8 --num-gpus 128 --num-layers-in-last-pipeline-stage 16。当层数无法被 --pp 整除时,用 --num-layers-in-first-pipeline-stage 与 --num-layers-in-last-pipeline-stage 指定首末阶段层数。需将工具目录与 Megatron-LM 加入 PYTHONPATH:export PYTHONPATH=$PYTHONPATH:$(pwd):/path/to/Megatron-LM。依赖安装:pip install mbridge transformers torch megatron-core==0.13.0;可选完整 Megatron-LM:pip install git+https://github.com/NVIDIA/Megatron-LM.git@core_r0.13.0。

适用场景:为 DeepSeek-V2/V3、Qwen2.5/Qwen3、Kimi 等模型寻找合适并行配置;检查模型是否适配指定 GPU 数量与显存;按重计算、专家并行、流水线并行、批大小顺序逐步降低显存。

限制:估算为基于模型架构的理论值,实际显存可能因框架开销浮动约 ±10-15%,建议预留 10-20% 余量并先小规模验证;MoE 模型专家并行对显存效率影响较大。具体支持范围与参数细节以资料为准,其余未提供。