查看GPU的占用进程

  1. 使用ps
ps -aux | grep $PATTERN

可以查看执行的命令和pid
2. 使用

fuser -v /dev/nvidia*"
  1. 删除所有占用gpu的进程
fuser -kv /dev/nvidia*"
  1. 根据指令的模糊匹配kill
#!/bin/bash

declare -a pids
declare -a cmds

a="$(ps -ax | grep $1)"
oldIFS=$IFS
IFS=$'\n'
cnt=0
for line in $a; do
    IFS=$oldIFS read -a arr <<< $line
    pids[$cnt]=${arr[0]}
    cmds[$cnt]=${arr[-1]}
    (( cnt+=1 ))
done

(( len=${#pids[@]}-3 ))
lineidx=0
if [ $len -eq 0 ] ; then
    echo No process found.
else
    while [ $lineidx -lt $len ]; do
        echo kill process, [command]: ${cmds[$lineidx]} [pid]: ${pids[$lineidx]}
        kill -9 ${pids[$lineidx]}
        (( lineidx+=1 ))
    done
fi
### 查看 GPU 占用率的方法 #### 在 Linux 系统上查看 GPU 占用率 对于配备了 NVIDIA 显卡的 Linux 系统,`nvidia-smi` 是个非常实用的命令行工具,它能提供关于 GPU 使用情况、温度以及内存占用等多方面的信息[^1]。 ```bash nvidia-smi ``` 除了 `nvidia-smi` 外,还有更高级别的工具如 `nvitop` 可以用来监控 GPU 的使用状况。这类工具不仅提供了更为直观的界面,还增加了额外的功能来帮助用户更好地理解 GPU 资源是如何被分配和使用的[^2]。 另外,在 Linux 中还可以利用 `top` 或者 `htop` 这样的通用进程监视器来观察特定进程对 CPU 和 RAM 的消耗情况;虽然这些工具主要用于跟踪 CPU 性能指标,但对于某些应用程序来说也可能间接反映出它们对 GPU 的影响程度[^3]。 #### 在 Windows 系统上查看 GPU 占用率 针对 Windows 用户而言,同样可以通过运行 `nvidia-smi` 来获取详细的 GPU 统计数据。只需打开 PowerShell 或 Command Prompt 并输入该指令即可获得即时报告。值得注意的是,这个方法适用于已经安装了相应驱动程序和支持软件包的情况下的 NVIDIA 设备。 此外,Windows 自带的任务管理器也能够很好地完成这项工作——通过图形化界面展示当前活动进程中每个实例所对应的 GPU 利用量百分比以及其他相关信息。 #### 实现远程监控解决方案 考虑到实际应用场景中的复杂性和灵活性需求,有时候可能需要从另台计算机甚至跨越网络边界去访问目标机器上的 GPU 数据。为此开发了些专门的小型应用或者脚本,允许管理员轻松实现这点而不必亲自登录到物理位置所在的服务器上去操作。例如提到的个案例就是借助第三方编写的 Python 脚本来定期抓取并汇报远端 Ubuntu 虚拟环境内部署有 AI 模型训练平台时产生的负载变化趋势[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值