【已解决】探究CUDA out of memory背后原因,2024年最新web就业方向

本文探讨了CUDA GPU显存管理,包括显存激活与失活机制,以及如何通过理解这一机制避免`out of memory`错误。通过示例代码解释了在深度学习中如何维护GPU显存稳定,并介绍了`torch.cuda.empty_cache()`在释放显存中的作用。文章还总结了关键知识点,如数据尺寸与显存占用的关系,以及何时触发垃圾回收机制。
摘要由CSDN通过智能技术生成

torch.randn((1, 1), device=device)

仍然占用448M

在这里插入图片描述
事实上,这是因为CUDA运行时,其固件会占用一定的显存,在本机软硬件环境下是448M,不同的CUDA版本或显卡型号固件显存不同。换言之,**只要使用了GPU,就至少会占

x

x

x M的显存,且这部分显存无法被释放**。

2.2 显存激活与失活

给出以下代码,请问哪一个会报错?

  • 代码A

x1 = torch.randn((200, 300, 200, 20), device=device)
x2 = torch.randn((200, 300, 200, 20), device=device)
x3 = torch.randn((200, 300, 200, 20), device=device)
x4 = torch.randn((200, 300, 200, 20), device=device)
x5 = torch.randn((200, 300, 200, 20), device=device)
x6 = torch.randn((200, 300, 200, 20), device=device)

  • 代码B

x = torch.randn((200, 300, 200, 20), device=device)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值