【bug记录】清除僵尸进程,释放GPU显存

news2024/12/22 23:56:18

目录

  • 1. 为什么会出现这种情况?
  • 2. 解决方案
    • 方法一:使用 fuser 命令
    • 方法二:
  • 3. 小贴士

在进行深度学习或其他需要GPU支持的任务时,我们有时会发现虽然没有可见的进程在执行,但GPU资源却意外地被占用。这种情况往往会阻碍我们的工作进度,因为新的任务无法启动。如果你遇到了这种状况,不要担心,这里有一些方法可以帮助你解决这个问题。


在这里插入图片描述

1. 为什么会出现这种情况?

这种情况通常是由于所谓的“僵尸进程”引起的。僵尸进程是指那些已经完成任务但没有正确关闭的进程,它们可能因为各种原因未能释放占用的GPU资源。这会导致资源浪费,并且阻碍其他任务的执行。

2. 解决方案

虽然重启服务器是一种直观的解决方案,但大多数情况下,我们无法因为权限不足而执行此操作。因此,我们需要寻找其他方法来解决这个问题。

方法一:使用 fuser 命令

  1. 打开你的终端。

  2. 输入命令 fuser -v /dev/nvidia* 查看当前占用GPU资源的进程。

    在这里插入图片描述

  3. 一旦找到这些进程,你可以使用 kill 命令来终止它们。例如,如图,我的进程号是94285,你可以执行 kill -9 94285 来强制终止它。

通过这种方式,你可以释放被僵尸进程占用的GPU资源,恢复系统的正常运行。

在这里插入图片描述

方法二:

reboot大法

3. 小贴士

  1. 在执行这些操作之前,请确保你有足够的权限来终止这些进程,并且要小心不要终止那些重要的系统进程。此外,保持定期检查系统状态的习惯,可以帮助你避免资源被长时间占用的情况。
  2. fuser 是一个强大的Unix和类Unix系统命令行工具,它用于显示哪些用户和进程正在使用特定的文件、套接字或文件系统。在我们的场景中,fuser 可以帮助我们找出哪些进程正在使用特定的GPU设备文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1657672.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis(无中心化集群搭建)

文章目录 1.无中心化集群1.基本介绍2.集群说明 2.基本环境搭建1.部署规划(6台服务器)2.首先删除上次的rdb和aof文件(对之前的三台服务器都操作)1.首先分别登录命令行,关闭redis2.清除/root/下的rdb和aof文件3.把上次的…

(23)实时采集微信消息(基于主窗体)-微信UI自动化(.Net+C#)

整理 | 小耕家的喵大仙 出品 | CSDN(ID:lichao19897314) Q Q | 978124155 往期知识回顾 (1)开启探索微信自动化之路-微信UI自动化(.NetC#) (2)初始化微信窗体UI自动化实例-微信UI自动化(.NetC#) (3)采用热键终止微信采集任务-微信UI自动…

linux调试

文章目录 1. 使用打印来调试1.1 重定向1.2 标准预定义宏1.3 日志代码 2. 内核异常2.1 内核打印2.1.1 打印级别2.1.2 跟踪异常2.1.3 动态打印2.1.4 RAM console 2.2 OOPS2.2.1 有源代码的情况2.2.2 没有源代码的情况 3 查看日志4 工具调试 1. 使用打印来调试 1.1 重定向 2>…

HDLbits 刷题 -- Exams/m2014 q3

Consider the function f shown in the Karnaugh map below. Implement this function. d is dont-care, which means you may choose to output whatever value is convenient. 译:考虑下面卡诺图中显示的函数f。 实现这个函数。D是dont-care,这意味着…

【数据结构】栈(Stack)和队列(Queue)

文章目录 栈一、栈的概念及结构二、栈的特点三、栈的实现1.初始化栈2.判断栈空3.入栈4.出栈5.取栈顶元素6.栈的元素个数7.销毁 队列一、队列的概念及结构二、队列的特点三、队列的实现1.初始化2.入队3.出队4.判断队空5.取队头元素6.取队尾元素 总结 栈 一、栈的概念及结构 栈…

Python ValueError: bad transparency mask

修改前 修复后 运行正常 from PIL import Image# 读取图片 #报错信息解决ValueError: bad transparency mask--相关文档地址https://blog.csdn.net/kalath_aiur/article/details/103945309 #1. 检查 alpha 通道是否是一个有效的掩码。如果不是,则需要对 alpha 通道…

随机梯度下降SGD的理解和现象分析

提出问题:令人疑惑的损失值 在某次瞎炼丹的过程中,出现了如下令人疑惑的损失值变化图像: 嗯,看起来还挺工整,来看看前10轮打印的具体损失值变化: | epoch 1 | iter 5 / 10 | time 1[s] | loss 2.3137 |…

Hadoop3:HDFS的Shell操作(常用命令汇总)

一、简介 什么是HDFS的Shell操作? 很简单,就是在Linux的终端,通过命令来操作HDFS。 如果,你们学习过git、docker、k8s,应该会发现,这些命令的特点和shell命令非常相似 二、常用命令 1、准备工作相关命令…

【VTKExamples::Rendering】第一期 TestAmbientSpheres(环境照明系数)

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享VTK样例TestAmbientShperes,介绍环境照明系数对Actor颜色的影响,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动…

Qt模型视图代理之QListView使用的简单介绍

往期回顾: Qt绘图与图形视图之Graphics View坐标系的简单介绍_graphics view 坐标系-CSDN博客 Qt模型视图代理之MVD(模型-视图-代理)概念的简单介绍-CSDN博客 Qt模型视图代理之QTableView应用的简单介绍-CSDN博客 Qt模型视图代理之QListView使用的简单介绍 一、最…

视频监控平台:交通运输标准JTT808设备SDK接入源代码函数分享

目录 一、JT/T 808标准简介 (一)概述 (二)协议特点 1、通信方式 2、鉴权机制 3、消息分类 (三)协议主要内容 1、位置信息 2、报警信息 3、车辆控制 4、数据转发 二、代码和解释 (一…

电商核心技术揭秘53:社群营销的策略与实施

相关系列文章 电商技术揭秘相关系列文章合集(1) 电商技术揭秘相关系列文章合集(2) 电商技术揭秘相关系列文章合集(3) 电商技术揭秘四十一:电商平台的营销系统浅析 电商技术揭秘四十二&#…

手机传输助手有哪些?如何快速互传文件?

手机已经成为我们生活和工作中不可或缺的一部分,而手机传输助手,作为一种帮助我们在不同设备之间快速、方便地共享文件的工具,其重要性不言而喻。无论是在工作中需要将文件从电脑传输到手机,还是在生活中想要与朋友分享美好的瞬间…

【智能算法】人工原生动物优化算法(APO)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献5.获取代码 1.背景 2024年,X Wang受到自然界原生动物启发,提出了人工原生动物优化算法( Artificial Protozoa Optimizer, APO)。 2.算法原理 2.1算法思想 AP…

一文玩转Vue3参数传递——全栈开发之路--前端篇(8)

全栈开发一条龙——前端篇 第一篇:框架确定、ide设置与项目创建 第二篇:介绍项目文件意义、组件结构与导入以及setup的引入。 第三篇:setup语法,设置响应式数据。 第四篇:数据绑定、计算属性和watch监视 第五篇 : 组件…

导弹追踪效果实现_unity基础开发教程

Unity开发中导弹追踪的原理与实现 前言原理逻辑实现导弹逻辑目标赋值 应用效果结语 前言 ⭕在之前的一个项目的开发中,需要加入一个导弹追踪的游戏功能,且还要实现不规则发射路径,但是这种功能是第一次做,经过查阅资料和询问做过的…

java io包

InputStream InputStream 是 Java I/O 中所有输入流的抽象基类,它定义了读取字节流的基本方法。InputStream 类提供了许多子类,用于从不同的数据源读取数据,如文件、网络连接、内存等。 InputStream 提供了以下常用的方法: int…

Magic Studio Eraser API使用教程

AI橡皮擦 - 使用网址 Magic Studio的AI橡皮擦功能非常好用,能去除图片中的杂物。但是网页版只支持低分辨率下载,想要原图就得开会员,价格不菲。 不过官网其实提供了API接入方式,并且有100次的免费试用机会 API接入网站 在这里可…

PyQt6--Python桌面开发(3.运行QTDesigner生成的ui文件程序)

运行QTDesigner生成的ui文件程序 用QTDesigner设计一个简单的UI 保存ui文件,放到项目里面去 通过pyqt6包里面的uic来加载ui文件 import sysfrom PyQt6.QtWidgets import QApplication from PyQt6 import uicif __name__ __main__:appQApplication(sys.argv)uiui…

C++对象引用作为函数参数

使用对象引用作为函数参数最常见,它不但有指针作为参数的优点,而且比指针作为参数更简单、更方便。 引用方式进行参数传递,形参对象就是实参对象的“别名”,对形参的操作其实就是对实参的操作。 例如:用对象引用进行参数传…