Linux显存占用高?快速清理方法

Linux系统显存通常由显卡驱动自动管理,无需手动清理,但当程序异常退出或驱动未释放资源时,可能导致显存残留占用,针对不同场景存在相应的清理方法。

通用清理方法

重启图形界面(推荐)

适用于桌面环境(如GNOME、KDE),操作后所有图形程序关闭,显存自动释放:

   sudo systemctl restart display-manager  # 重启显示管理器(通用)
   # 或指定管理器(根据实际选择):
   sudo systemctl restart gdm      # GNOME
   sudo systemctl restart sddm     # KDE
   sudo systemctl restart lightdm  # Ubuntu/LXDE

重启系统

彻底释放所有资源(包括显存):

   sudo reboot

针对NVIDIA显卡

重置GPU(无需重启)

使用 nvidia-smi 工具:

   nvidia-smi --gpu-reset -i 0  # 重置GPU 0(替换为实际GPU ID)

卸载并重载驱动模块

   sudo rmmod nvidia_uvm nvidia_drm nvidia_modeset nvidia  # 卸载模块
   sudo modprobe nvidia nvidia_modeset nvidia_drm nvidia_uvm  # 重载模块

终止占用进程

查看显存占用进程:

   nvidia-smi  # 找到占用显存的PID
   kill -9 <PID>  # 强制结束进程

针对AMD显卡

重置GPU内核模块

   sudo rmmod amdgpu  # 卸载驱动模块
   sudo modprobe amdgpu  # 重载模块

使用RadeonTop监控

安装工具后查看占用进程:

   sudo apt install radeontop  # Debian/Ubuntu
   radeontop -c  # 显示占用率高的进程

针对集成显卡(Intel)

集成显卡共享系统内存,释放方法等同于清理内存:

  1. 结束占用内存的进程:
    top  # 查看高内存进程
    kill <PID>
  2. 清理缓存:
    echo 3 | sudo tee /proc/sys/vm/drop_caches  # 清理PageCache/目录项/inode

高级调试方法

监控显存使用

  • NVIDIA:watch -n 1 nvidia-smi
  • AMD:watch -n 0.5 radeontop
  • 通用:sudo lsof /dev/dri/card* 查看访问显卡的设备

检查驱动日志

   dmesg | grep -i "drm\|gpu\|vram"  # 排查驱动错误
   journalctl -b -k --gpu=drm        # 查看内核GPU日志

注意事项

  1. 风险提示
    • 卸载驱动模块可能导致图形界面崩溃,请在终端(TTY)操作(Ctrl+Alt+F2~F6)。
    • 生产环境慎用强制重置,可能引发数据丢失。
  2. 预防建议
    • 更新显卡驱动至最新版:sudo apt upgrade nvidia-driver(NVIDIA)或使用厂商官方源。
    • 避免异常关闭GPU程序(如CUDA应用、游戏)。
  3. 常见误区
    • 显存≠内存free 命令显示的是系统内存,非显存。
    • 无需定期清理:驱动会自动回收资源,仅需处理异常情况。

引用说明

  • NVIDIA System Management Interface (nvidia-smi文档)
  • AMDGPU内核驱动 (官方Wiki)
  • Linux DRM(Direct Rendering Manager)子系统 (内核文档)
  • 内存管理机制 (Linux内核文档)

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9115.html

(0)
酷番叔酷番叔
上一篇 2025年7月29日 01:30
下一篇 2025年7月29日 01:48

相关推荐

  • 为什么用这3个AI工具的人效率偷偷翻倍?

    前提条件安装GCC编译器Linux默认不安装编译器,需手动安装GCC(GNU Compiler Collection):sudo apt update && sudo apt install gcc # Debian/Ubuntusudo yum install gcc # CentOS/RHE……

    2025年7月19日
    19000
  • 如何在win7进入linux系统

    win7系统中可通过安装虚拟机软件如VMware,然后在其中安装Linux系统来进入Linux环境

    2025年8月18日
    21100
  • Linux下如何运行.py文件?操作步骤与方法详解

    在Linux系统中运行Python文件是开发者和系统管理员常见的操作,掌握多种运行方法能应对不同场景需求,本文将详细介绍从基础准备到高级运行技巧的全流程,确保你能顺利执行.py文件,运行前的准备工作:确认Python环境在运行.py文件前,需确保Linux系统已安装Python解释器,大多数Linux发行版默认……

    2025年9月29日
    15200
  • 如何轻松提升网站流量?

    Makefile 在 Linux 中的编写指南什么是 Makefile?Makefile 是 Linux 开发中的自动化构建工具核心,通过定义依赖关系和构建规则,实现源代码的高效编译、链接和安装,它解决了手动编译的重复劳动问题,尤其适合多文件项目,能自动识别需更新的文件,显著提升开发效率,Makefile 基础……

    2025年6月20日
    19600
  • Linux系统如何安装Windows系统?操作步骤是什么?

    在Linux系统下安装Windows双系统,需提前规划分区、准备安装介质,并注意引导配置,以下是详细步骤:安装前准备备份数据:双系统安装存在分区风险,务必备份Linux系统重要数据(如/home目录)至外置存储设备,确认系统类型:检查当前Linux是UEFI还是BIOS启动模式,可通过以下命令判断:UEFI系统……

    2025年8月27日
    19600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信