以下是PyTorch在Linux上的内存管理技巧:
torch.cuda.amp.autocast()结合FP16/FP32,减少内存占用并加速计算。torch.utils.checkpoint选择性存储中间结果,反向传播时重新计算,节省内存。FullyShardedDataParallel分片模型参数到多GPU,减少单卡内存负载。add_()等原地操作避免创建新张量,减少内存分配。torch.cuda.empty_cache()手动释放未使用的显存。DataLoader的pin_memory=True和多num_workers加速数据传输,减少内存占用。torch.cuda.memory_summary()或nvidia-smi实时监控内存状态。