手动释放Linux显卡显存

1、输入命令fuser -v /dev/nvidia*查看显卡占用
在这里插入图片描述
2、使用命令kill -9 [PID]删除占用进程的PID(即上图中的PID一列

### 如何在 Linux 系统下释放 GPU 显存 当使用 TensorFlow 或其他框架进行实验时,可能会遇到程序结束后 GPU 的显存仍然被占用的情况。此时可以按照以下方法来解决。 #### 使用 `fuser` 和 `kill` 命令释放显存 通过执行命令 `sudo fuser /dev/nvidia*` 可以找到当前正在占用 NVIDIA 设备的所有进程 ID (PID)[^1]。接着可以通过向这些 PID 发送终止信号的方式强制结束它们。具体操作如下: ```bash sudo fuser /dev/nvidia* kill -9 <PID> ``` 其中 `<PID>` 是上一步获取到的具体进程编号。完成上述步骤后,通常能够成功释放被占用的显存资源。 #### 利用 `nvidia-smi` 工具排查并清除残留进程 如果发现某些情况下即使尝试了以上方式也无法完全解决问题,则还可以借助于更详细的工具——即 NVIDIA 提供的标准管理接口 `nvidia-smi` 来进一步分析状况。运行此命令可查看当前 GPU 上活跃的任务列表及其关联信息[^2]: ```bash nvidia-smi ``` 对于那些未正常退出却依旧驻留在硬件上的计算单元实例来说,可以直接定位其所属 PIDs 并同样采用前述手段予以处理;另外也可以考虑直接调用专门针对此类场景设计的功能选项来进行全局范围内的清理动作(需谨慎行事以免误伤合法作业)。例如: ```bash ps -ef | grep python # 寻找可能涉及 Python 脚本的相关后台活动记录 kill -9 <PYTHON_PID> # 对确认无误的目标实施强力中断指令 ``` 值得注意的是,在实际应用过程中应当注意区分哪些确实是遗留下来的垃圾数据项以及哪些可能是正在进行中的重要业务流程部分,从而避免不必要的损失发生[^4]。 #### 备选方案:重启驱动或服务 假如常规办法均告失效的话,最后一种极端措施便是重新加载图形卡驱动程序本身或者干脆整个计算机系统重置一次。这虽然简单粗暴但却往往能起到立竿见影的效果。比如先卸载再安装回原来的版本配置文件等等[^3]。 ```bash sudo rmmod nvidia_uvm sudo modprobe nvidia_uvm ``` 这样做的风险相对较高一点因为涉及到核心层面的操作所以除非万不得已不建议轻易尝试。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值