Pytorch GPU 示例脚本内存不足
pytorch 488
原文标题 :Pytorch GPU Out of memory on example script
我尝试从官方拥抱面转换器存储库运行示例脚本,其中安装了适用于 Sber GPT-3 Large 的 Python 3.10.2、PyTorch 1.11.0 和 CUDA 11.3。没有任何文件修改,我使用参数运行了这个脚本:
--output_dir out --model_name_or_path sberbank-ai/rugpt3large_based_on_gpt2 --train_file dataset.txt --do_train --num_train_epochs 15 --overwrite_output_dir
并得到
RuntimeError: CUDA out of memory. Tried to allocate 512.00 MiB
也试过--block_size 32
和--per_device_train_batch_size 1
但不成功。我的GPU是RTX 2060 6GB。可能真的是显存不足?不买新GPU就可以解决吗?
回复
我来回复-
ewz93 评论
GPT-3 模型具有大量参数,因此非常占用内存。只是想了解一下,如果我正确理解 Sber AI 文档,大型模型已在 128/16 V100 GPU(每个 GPU 有 32GB)上进行了多天的预训练。模型微调和推理显然会在内存上变得更容易,但即使这样也需要一些严肃的硬件,至少对于较大的模型来说是这样。
您可以尝试使用中型和小型模型,看看是否适合您。您也可以随时尝试在像 Google Colab 这样的云服务中运行它,他们也有一个笔记本来演示这一点。确保在 Google Colab 的笔记本设置中激活 GPU 使用。在免费版本中,您可以获得一些不错的 GPU,如果您对此更认真,您可以在他们的云中获得专业版以获得更好的硬件。可能比以当前价格购买比 RTX 2060 更强大的 GPU 便宜很多。当然,有很多云硬件服务可以运行大型模型训练/微调,不仅仅是谷歌。
2年前