当前位置: 首页 > article >正文

ubuntu系统进入休眠后cuda初始化报错


layout: post # 使用的布局(不需要改)
title: torch.cuda.is_available()报错 # 标题
subtitle: ubuntu系统进入休眠后cuda初始化报错 #副标题
date: 2023-11-29 # 时间
author: BY ThreeStones1029 # 作者
header-img: img/about_bg.jpg #这篇文章标题背景图片
catalog: true # 是否归档
tags: pytorch #标签


文章目录

  • 一、前言
  • 二、解决方法
  • 三、设置系统不进入休眠
    • 3.1.查看当前系统休眠状态
    • 3.2.设置不休眠
    • 3.3.再次查看休眠状态
  • 三、参考

一、前言

ubuntu20.04,跑代码,系统自动休眠后,程序被异常终止,再次运行后报错

/home/***/anaconda3/envs/nnunet/lib/python3.9/site-packages/torch/cuda/__init__.py:107: UserWarning: CUDA initialization: CUDA unknown error - this may be due to an incorrectly set up environment, e.g. changing env variable CUDA_VISIBLE_DEVICES after program start. Setting the available devices to be zero. (Triggered internally at ../c10/cuda/CUDAFunctions.cpp:109.)

二、解决方法

想来想去,明明下午还能正常运行,晚上回来看发现系统自动进入休眠了,代码被终止了,尝试重新运行发现报错,但理论上应该没问题的,除了系统休眠了一次。经过搜索在torch官网找到解决方法。

sudo rmmod nvidia_uvm
sudo modprobe nvidia_uvm

运行完成后就能正常使用cuda了。

三、设置系统不进入休眠

3.1.查看当前系统休眠状态

systemctl status sleep.target

image-20231129193623002

可以看到系统是设置了会自动进入休眠的,状态为loaded

3.2.设置不休眠

重新设置让它不进入休眠

sudo systemctl mask sleep.target supend.target hibernate.target hybrid-sleep.target

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3.3.再次查看休眠状态

systemctl status sleep.target

image-20231129194114450

变成masked即可

三、参考

1.userwarning-cuda-initialization-cuda-unknown-error-this-may-be-due-to-an-incorrectly-set-up-environment-e-g-changing-env-variable-cuda-visible-devices-after-program-start-setting-the-available-devices-to-be-zero/129335

2.ubuntu20.04禁止自动休眠的几种方式
可以到我的博客查看ubuntu系统进入休眠后cuda初始化报错


http://www.kler.cn/a/149830.html

相关文章:

  • [Docker#3] LXC | 详解安装docker | docker的架构与生态
  • GoLang协程Goroutiney原理与GMP模型详解
  • MinerU容器构建教程
  • Flink安装和Flink CDC实现数据同步
  • XML 现实案例:深入解析与应用
  • 设计模式——迭代器模式
  • 【Redis基础】Redis基本的全局命令
  • 一文详解Python中常用数据类型
  • render函数举例
  • vue中下载文件后无法打开的坑
  • Linux 下命令行启动与关闭WebLogic的相关服务
  • PPP/INS紧组合代码学习
  • uniapp设置手机通知权限以及uniapp-push2.0推送
  • 【迅搜04】索引配置(一)加载配置文件以及服务端配置
  • SpringBoot : ch09 整合Redis
  • 解析javascript数组方法 find 和 filter 有何区别
  • Android 11.0 默认开启USB调试功能
  • 【C++】内存管理(new与delete)
  • android开发:安卓13Wifi和热点查看与设置功能
  • 【Java Spring】SpringBoot 五大类注解
  • 使用elasticsearch-head插件修改elasticsearch数据
  • [UGUI]Unity背包系统制作详细步骤
  • 【古月居《ros入门21讲》学习笔记】15_ROS中的坐标系管理系统
  • 王者农药小游戏
  • MySQL 索引类型
  • html实现计算器源码