Перейти к содержимому


Влад2019

Регистрация: 26 янв 2019
Offline Активность: фев 07 2019 01:12
-----

Мои темы

После перезапуска зеленой фермы или сбоя майнера не применяется разгон в HiveOs

01 февраля 2019 - 01:25

Всем привет!
 
Подскажите плз - после перезапуска зеленой фермы или сбоя майнера на ней не применяется разгон в HiveOs
т.е. слетают параметры энергопотребления и частоты ядра/памяти
при этом там есть опция "применять разгон после старта майнера" через определенное количество секунд, но она не помогает
если вручную изменить настройки разгона при работающем майнере, то все работает как надо
поделитесь плз, у кого такое было и как победили?

Небольшой скрипт на linux для рабочей станции

26 января 2019 - 12:30

Использую пк с дебиан как рабочую станцию, решил написать демона, который бы разгонял карту и запускал майнер, пока активен скринсейвер (рабочий стол локнут)
 
Код:
#! /bin/bash
 
function suspend_miner() {
  kill $(cat ./miner.pid) && rm -rf ./miner.pid
  X :2 &
  sleep 2
  export DISPLAY=:2
  XORG_DISPLAY_PID=$!
  nvidia-settings -a "[gpu:0]/GPUGraphicsClockOffset[2]=0"
  nvidia-settings -a "[gpu:0]/GPUGraphicsClockOffset[3]=0"
  nvidia-settings -a "[gpu:0]/GPUMemoryTransferRateOffset[2]=0"
  nvidia-settings -a "[gpu:0]/GPUMemoryTransferRateOffset[3]=0"
  nvidia-settings -a "[gpu:0]/GPUFanControlState=0"
  kill $XORG_DISPLAY_PID
}
function resume_miner() {
  X :2 &
  sleep 2
  export DISPLAY=:2
  XORG_DISPLAY_PID=$!
  nvidia-settings -a "[gpu:0]/GPUGraphicsClockOffset[2]=200"
  nvidia-settings -a "[gpu:0]/GPUGraphicsClockOffset[3]=200"
  nvidia-settings -a "[gpu:0]/GPUMemoryTransferRateOffset[2]=700"
  nvidia-settings -a "[gpu:0]/GPUMemoryTransferRateOffset[3]=700"
  nvidia-settings -a "[gpu:0]/GPUMemoryTransferRateOffset[3]=700"
  nvidia-settings -a "[gpu:0]/GPUFanControlState=1"
  nvidia-settings -a "[fan:0]/GPUTargetFanSpeed=60"
  nvidia-smi -pl 145
  kill $XORG_DISPLAY_PID
  ./miner --config ./miner.cfg & echo $! > ./miner.pid
}
function on_exit() {
  suspend_miner
  kill $(cat ./miner.pid)
  rm -rf ./miner.pid
  exit 1
}
export suspend_miner
export resume_miner
 
cd /.../zec_miner_0.3.4b
trap on_exit INT EXIT
DBUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pidof -s gnome-session-binary)/environ)
dbus-monitor --address ${DBUS_ADDRESS:25} "type='signal',interface='org.gnome.ScreenSaver'" |
  while read x; do
    case "$x" in
      *"boolean true"*) resume_miner;;
      *"boolean false"*) suspend_miner;;
    esac
  done
В чем проблема: nvidia-settings нужен X для применения настроек, поэтому я создаю новый (X :2). Все запускается, идет разгон, майнер майнит, как и положено. Но. После входа в систему используется функция suspend_miner, где не работает nvidia-settings -a "[gpu:0]/GPUFanControlState=0". Т.е. настройка применяется, значение выставляется 0, но куллер все равно крутится со сокростью 60%. Насколько я понимаю, после закрытия X :2 в функции "resume_miner" значение 60% устанавливается как дефолтное и после используется вместо стандартной курвы скорости от nvidia. Собсно как это можно пофиксить?
P.S. сам скрипт ловит события блокировки/разблокировки экрана и запускает эти две функции