• workaround for Nvidia vs hibernate

    From Eben King@21:1/5 to All on Sun Sep 29 21:00:01 2024
    I have an EVGA Nvidia GTX 970, Nvidia driver 470, and three monitors. If I hibernate at night and resume in the morning, the GPU gets in a state where:

    temp<60C: fan speed is actually and reported 0
    temp>60C: fan speed is actually 0, but is reported as crazy non-contiguous values

    Which means I can only run two monitors (the third has to be disabled) and I can't do anything that puts too much load on the CPU, lest the GPU overheat
    and effectively crash the OS. I put some GPU stats in the top center panel
    so I could keep an eye on it.

    Anyhow, if I use ddccontrol to turn off and on each monitor, that forces the GPU to straighten up and fly right. It hangs out at temp=63C and fan=8-9%.
    I'm not sure of the actual minimum I have to do (maybe one monitor is
    enough? Maybe a state lower than DPMS 5 will work?) because I just figured this out today. But maybe it can help someone else.

    I wrote a script (/bin/sh) a while back that resets the monitors to the way
    I like them, and added this to it:

    DDC=ddccontrol

    # default
    DPMS=no

    while [ $# -gt 0 ] ; do
    case "$1" in
    -dpms|-DPMS) DPMS=yes
    shift ;;
    *) echo "Unknown option '$1'"
    exit 1
    esac
    done

    if [ $DPMS = yes ] ; then
    # toggles each detected monitor off and on using DPMS
    devices="$("$DDC" -p 2>/dev/null | sed -n /Detected/,/^$/p | grep '^ -
    D' | cut -f 4 -d ' ')"
    for device in $devices ; do
    echo '-=>' $device '<=-'
    "$DDC" -r 0xd6 -w 5 "$device" # off
    "$DDC" -r 0xd6 -w 1 "$device" # on
    done
    exit
    fi

    --
    Unfortunately, our Bright Young PFY will no longer be assisting
    with expeditions downtown, as he has been dubbed the
    Telecom Destruction Bunny and banned from taking
    his aura anywhere near anything major. -- Anthony DeBoer on ASR

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)