Недавно я начал добычу litecoins. Мой шахтер состоит из 3 графических процессоров Radeon R9 290x. Время от времени один из них (а не конкретный, случайный случай) останавливает добычу. Обычно перезапуск cgminer (программа для запуска) не помогает, единственное, что помогает, это перезагрузка. На следующей неделе я уезжаю в течение 8 дней, и мне некому это делать для меня, поэтому я подумал о сценарии, который будет делать это автоматически.
Скрипт должен периодически проверять, работают ли все графические процессоры, а если нет - перезагрузка. Я думаю, что чтение температуры - это самая легкая вещь, чтобы определить, работают ли все карты. Я знаю, как читать температуру, перезагружать, добавлять материал в cron.
Получить команду температуры:
aticonfig --odgt --adapter=all | grep Sensor:
Выход выглядит следующим образом:
Sensor: Temperature - 77.00 C
Sensor: Temperature - 77.00 C
Sensor: Temperature - 77.00 C
I хотел бы, чтобы скрипт читал числовое значение и перезагружался, если он опускается ниже XX.
Можете ли вы мне помочь?
Это должно работать:
#!/usr/bin/env bash
while true; do
aticonfig --odgt --adapter=all |
awk -vt="$1" '(/Sensor:/ && $(NF-1) < t ){exit(1)}' || reboot
sleep 10
done
Сохраните сценарий выше как gpu_temp.sh, сделайте его исполняемым и запустите его с заданным вами пределом температуры:
/path/to/gpu_temp.sh 77
2] У меня нет карты ati, поэтому я не могу проверить это, но это должно привести к перезагрузке вашего компьютера, если ядро GPU опустится ниже 77 ° C.