显存充足,但是却出现CUDA error:out of memory错误

之前一开始以为是cuda和cudnn安装错误导致的,所以重装了,但是后来发现重装也出错了。
后来重装后的用了一会也出现了问题。确定其实是Tensorflow和pytorch冲突导致的,因为我发现当我同学在0号GPU上运行程序我就会出问题。
详见pytorch官方论坛:
https://discuss.pytorch.org/t/gpu-is-not-utilized-while-occur-runtimeerror-cuda-runtime-error-out-of-memory-at/34780

因此最好的方法就是运行的时候使用CUDA_VISIBLE_DEVICES限制一下使用的GPU。
比如有0,1,2,3号GPU,CUDA_VISIBLE_DEVICES=2,3,则当前进程的可见GPU只有物理上的2、3号GPU,此时它们的编号也对应变成了0、1,即cuda:0对应2号GPU,cuda:1对应3号GPU。

如何设置CUDA_VISIBLE_DEVICES:
① 使用python的os模块
import os
os.environ['CUDA_VISIBLE_DEVICES']='2, 3'
②直接设置环境变量(linux系统)
export CUDA_VISIBLE_DEVICES=2,3
分割线~~~~~
猜测有可能是cuda和cudnn安装错误导致的,决定重装。
卸载CUDA
https://blog.csdn.net/huang_owen/article/details/80811738
https://blog.csdn.net/u014561933/article/details/79968580
由于之前使用的是deb安装,
sudo apt-get autoremove --purge cuda
卸载后,进入/usr/local,发现还残留有cuda的文件夹,据说是cudnn,但是我好像没发现??

进入cuda-9.0

删除文件夹

重新安装cuda
这次使用.run进行安装
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html


安装完成

之前已经在/etc/profile添加过环境变量了


然后也安装补丁

安装cudnn
https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#installlinux
使用deb方式安装

并验证cudnn的安装是否成功


最后删掉该例程

最后解决了上述虚假报错的问题

显存充足,但是却出现CUDA error:out of memory错误的更多相关文章
- 6G显卡显存不足出现CUDA Error:out of memory解决办法
从6月初开始,6G显存的显卡开始出现CUDA Error:out of memory的问题,这是因为dag文件一直在增加,不过要增加到6G还需要最少两年的时间. 现在出现问题的原因是1.内核太古老 ...
- ubuntu查看并杀死自己之前运行的进程解决办法RuntimeError: CUDA error: out of memory
问题描述:在跑深度学习算法的时候,发现服务器上只有自己在使用GPU,但使用GPU总是会报RuntimeError: CUDA error: out of memory,这是因为自己之前运行的进程还存在 ...
- 问题-Delphi编译到最后Linking时总是出现与ntdll.dll有关的错误还有Fatal Error Out of memory错误
1.跳出错误法 ===================================================在主界面的implementation {$R *.dfm} 下放入以下代码: ...
- CUDA Error
第一个问题:CUDA Error: out of memory darknet: ./src/cuda.c:36: check_error: Assertion `0' failed. 已放弃 (核心 ...
- CUDA 显存操作:CUDA支持的C++11
CUDA9的编译器和语言改进 使用CUDA 9,nvcc编译器增加了对C ++ 14的支持,其中包括新功能 通用的lambda表达式,其中使用auto关键字代替参数类型; auto lambda = ...
- 显卡、显卡驱动、显存、GPU、CUDA、cuDNN
显卡 Video card,Graphics card,又叫显示接口卡,是一个硬件概念(相似的还有网卡),执行计算机到显示设备的数模信号转换任务,安装在计算机的主板上,将计算机的数字信号转换成模拟 ...
- [Pytorch]深度模型的显存计算以及优化
原文链接:https://oldpan.me/archives/how-to-calculate-gpu-memory 前言 亲,显存炸了,你的显卡快冒烟了! torch.FatalError: cu ...
- Pytorch训练时显存分配过程探究
对于显存不充足的炼丹研究者来说,弄清楚Pytorch显存的分配机制是很有必要的.下面直接通过实验来推出Pytorch显存的分配过程. 实验实验代码如下: import torch from torch ...
- 深度学习中GPU和显存分析
刚入门深度学习时,没有显存的概念,后来在实验中才渐渐建立了这个意识. 下面这篇文章很好的对GPU和显存总结了一番,于是我转载了过来. 作者:陈云 链接:https://zhuanlan.zhihu. ...
随机推荐
- JAVA学习笔记(2)—— java初始化三个原则
1. 初始化原则 (1) 静态对象(变量)优先于非静态对象(变量)初始化,其中静态对象(变量)初始化一次,非静态对象(变量)可能会初始化多次. (2) 父类优先于子类初始化 (3) 按照成 ...
- 3D Slicer中文教程(五)—三维视图颜色改变
3D Slicer在分割后三维重建的图像,效果很好,但是存在一定的不足,默认的颜色并不是很合适,这时手动设置三维视图下的需要的颜色就很有必要了.如下图所示,默认的三维重建后的颜色. 这样的颜色显然不是 ...
- 微信小程序开发之自定义菜单tabbar
做这个 遇到问题比较多,特此记录以便查看,直接上代码: 一.app.js 控制原有菜单隐藏.启用新菜单.菜单列表,集中在这里控制 hideTabBar这个很关键,解决苹果6S导致的双导航栏:原文htt ...
- express 实践
截图: 这个项目的数据是根据之前瓜子网爬虫爬的北京区数据 express + mongodb + pug(jade) + flex.css: 项目地址: https://github.com/uust ...
- 规范开发目录 及 webpack多环境打包文件配置
规范开发目录 普通项目 开发目录: ├── project-name ├── README.md ├── .gitignore ├── assets ├── ├── js ├── ├── css ├─ ...
- mongodb基本的配置和使用
一.连接配置,使用自动配置方式,在applicaiton.properties中配置连接信息即可 spring.data.mongodb.host=127.0.0.1 //连接地址 spring.da ...
- Windows Internals 笔记——关联性
1.默认情况下,Windows Vista在给线程分配处理器时,使用软关联.意思是如果其他因素都一样,系统将使线程在上一次运行的处理器上运行.让线程始终在同一个处理器上运行有助于重用仍在处理器高速缓存 ...
- 物化视图(materialized view) 实现数据迁移、数据定时同步
近日公司有一个9i 的Oracle数据库,运行效率低下.想要将其升级到11G. 但是升级之前 要将数据进行同步,好在表不是很多.只有三张表.业务压力也不大,就想到了使用物 化视图的方式将数据同步过来. ...
- Linux基础-远程管理
shutdown 选项 时间 关机/重新启动 -r 重新启动 不指定选项和参数,1分钟后关闭电脑 重启必须加-r 示例: shutdown -r now now表示现在 shut ...
- skopeo---github简单记录
新的redhat 8已默认不集成docker,而是使用podman了. podman和skopeo和buildah,cri-o一起,组成了新一代的容器四大天王. 花时时间了解下,是值得的. skope ...