Checklist / 检查清单
Bug Description / Bug 描述
zero3_offload模式下,DataLoader默认使用fork模式创建进程,此时父进程已offloadd到内存大量数据,由于Fork + COW 机制的原因,在epoch完成后重启DataLoader的时机会消耗大量内并导致OOM。
此issue也提到类似问题 #9649 。
解决办法:
1、开启dataloader_persistent_workers选项能够有一定程度缓解,但还是有大量额外内占用
2、使用spawn模式创建DataLoader进程规避Fork + COW带来的问题(还未验证)
How to Reproduce / 如何复现
ms-swift 版本: 4.3.2
Python: 3.12
触发条件: DeepSpeed ZeRO-3 + torchrun (8 GPU)
模型: Qwen3.6-27B
Additional Information / 补充信息
No response
Checklist / 检查清单
Bug Description / Bug 描述
zero3_offload模式下,DataLoader默认使用fork模式创建进程,此时父进程已offloadd到内存大量数据,由于Fork + COW 机制的原因,在epoch完成后重启DataLoader的时机会消耗大量内并导致OOM。
此issue也提到类似问题 #9649 。
解决办法:
1、开启dataloader_persistent_workers选项能够有一定程度缓解,但还是有大量额外内占用
2、使用spawn模式创建DataLoader进程规避Fork + COW带来的问题(还未验证)
How to Reproduce / 如何复现
ms-swift 版本: 4.3.2
Python: 3.12
触发条件: DeepSpeed ZeRO-3 + torchrun (8 GPU)
模型: Qwen3.6-27B
Additional Information / 补充信息
No response