使用 PyTorch 时 GPU 内存不足

问题描述 投票:0回答:1

我正在尝试使用和微调一个 Huggingface 模型 (mobileVIT),为了微调该模型,我使用 Google Colab 的 A100 GPU,它具有 40Gb GPU RAM。但是,我的存储空间一直不足。 PyTorch 占用 38Gb 正常吗?

OutOfMemoryError:CUDA 内存不足。尝试分配 1024.00 MiB。 GPU 0 的总容量为 39.56 GiB,其中 952.81 MiB 是免费的。进程 378486 正在使用 38.62 GiB 内存。在分配的内存中,38.07 GiB 由 PyTorch 分配,54.62 MiB 由 PyTorch 保留但未分配。如果保留但未分配的内存很大,请尝试设置 PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True 以避免碎片。请参阅内存管理文档 (https://pytorch.org/docs/stable/notes/cuda.html#environment-variables)

我尝试更改批处理大小,但每次更改批处理大小时,PyTorch 的大小都会减小,但仍然不足以分配必要的存储空间。我希望批量大小至少为 256。使用 40Gb GPU 可以吗?

python pytorch artificial-intelligence
1个回答
0
投票

在我看来,我无法回答您有关最大批量大小的问题,这取决于您的图像的大小。 (仍然256对我来说似乎已经很大了) 但您确定这些图像占用了您所有的 GPU 内存吗? 我的意思是,你确定你的 GPU 摄取了太多的数据,或者你不能在某个地方出现内存泄漏吗? 检查第二种情况: 您是否在第一次迭代或几次迭代后缺乏记忆? 微调的时候有没有看内存?

© www.soinside.com 2019 - 2024. All rights reserved.