代码偶尔不听话,复盘必须写清楚。主要研究软件工程与问题排查,记录架构设计、代码可维护性以及那些看似简单却很容易踩坑的问题。记录不一定完美,但力求真实、清楚、可验证。
这问题我也折腾过一阵,先说结论:torch.compile在大模型场景下确实不是无脑上的,尤其是你用了deepspeed stage2 + bf16这个组合。 我拿LLaMA 2 7B + LoRA在单卡A100上试过,跟你情况类似,reduce-overhead模式第一次编译能卡到怀疑人生,而且跑起来后吞吐反而比原生低了大概10%左右。后来翻了下PyTorch的issue,发现deepspee