首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ubuntu18.04-在事件中关闭PC的脚本

Ubuntu18.04-在事件中关闭PC的脚本
EN

Ask Ubuntu用户
提问于 2019-07-01 11:57:45
回答 1查看 189关注 0票数 0

在这里或其他论坛的支持下,我成功地推出了nVidia渲染农场多GPU,用于辛烷渲染奴隶守护进程中的网络计算。

现在,我试图找到一个方法-独立脚本或嵌套在Conky设置,这将允许关闭PC在特定的事件?

我需要更精确:当监控nvidia-设置= GPU利用率将低于10%,如300秒,然后关闭计算机。

到目前为止,我有这个脚本从另一个用户关闭我的电脑。但我需要延长它的另一个超时条件,以避免关闭个人电脑时,尽快价值下降到10%以下。因为计算中有一些负载变化(例如,从动画的一个帧到下一个帧)。

代码语言:javascript
复制
#!/bin/bash
GPU=$(execi 60 nvidia-settings -query [gpu:0]/GPUCoreTemp -t)
if [[ ${GPU} -le 10 ]]; then
dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.PowerOff boolean:false
fi
EN

回答 1

Ask Ubuntu用户

发布于 2020-04-23 07:58:39

你好,我终于想出了一个解决方案,忘了把它列在这里供其他用户使用。1) GPU 780 Ti不支持nvidia-smi utilization.gpu函数,需要修改请求值fan.speed 2的脚本,升级到更高的GPU范围,支持所有nvidia-smi功能,包括utilization.gpu。

fan.speed - nVidia GPU系列低于8

代码语言:javascript
复制
    #!/bin/bash
echo $(date +"%T") >> $HOME/Octane/GPU-off.log
echo "1) FIRST VERIFICATION"
GPU1=$(exec nvidia-smi --format=csv,noheader,nounits --id=0 --query-gpu=fan.speed)
echo $GPU1
if [[ ${GPU1} -le 40 ]]; then
    sleep 15m
    echo $(date +"%T") >> $HOME/Octane/GPU-off.log
    echo "2) SECOND VERIFICATION"
    GPU2=$(exec nvidia-smi --format=csv,noheader,nounits --id=0 --query-gpu=fan.speed)
    echo $GPU2
    if [[ ${GPU2} -le 40 ]]; then
        sleep 15m
        echo $(date +"%T") >> $HOME/Octane/GPU-off.log
        echo "3) SHUTDOWN"
        GPU3=$(exec nvidia-smi --format=csv,noheader,nounits --id=0 --query-gpu=fan.speed)
        echo $GPU3
        if [[ ${GPU3} -le 40 ]]; then
            echo $(date +"%T") >> $HOME/Octane/GPU-off.log
            sudo poweroff
        fi
    fi
fi

在utiluzation.gpu上

代码语言:javascript
复制
#!/bin/bash
echo $(date +"%T") >> $HOME/Octane/GPU-off.log
echo "1) FIRST VERIFICATION"
GPU1=$(exec nvidia-smi --format=csv,noheader,nounits --id=0 --query-gpu=utilization.gpu)
echo $GPU1
if [[ ${GPU1} -le 10 ]]; then
    sleep 15m
    echo $(date +"%T") >> $HOME/Octane/GPU-off.log
    echo "2) SECOND VERIFICATION"
    GPU2=$(exec nvidia-smi --format=csv,noheader,nounits --id=0 --query-gpu=utilization.gpu)
    echo $GPU2
    if [[ ${GPU2} -le 10 ]]; then
        sleep 15m
        echo $(date +"%T") >> $HOME/Octane/GPU-off.log
        echo "3) SHUTDOWN"
        GPU3=$(exec nvidia-smi --format=csv,noheader,nounits --id=0 --query-gpu=utilization.gpu)
        echo $GPU3
        if [[ ${GPU3} -le 10 ]]; then
            echo $(date +"%T") >> $HOME/Octane/GPU-off.log
            sudo poweroff
        fi
    fi
fi
票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1155212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档