ты только сейчас пишешь, что твой скрипт под линукс? ты гений просто. в нормально оформленных темах обычно в шапке сразу ТС пишут о чём речь
- MINING CLUB торгово-информационный портал для майнеров
- → Просмотр профиля: Репутация: vatfree
Статистика
- Группа: Пользователи
- Сообщений: 16
- Просмотров: 1 850
- Статус: Новичок
- Возраст: Неизвестен
- День рождения: Неизвестен
-
Пол
Не определился
-
Интересы
Продаем услуги по уменьшению НДС
-
DEPOSIT
30.000 рублей
Инструменты
Друзья
vatfree еще не добавил друзей
Последние посетители
#124928 Автоматическое управление вентиляторами NVIDIA
Написано vatfree 22 октября 2019 - 06:05
#124904 Автоматическое управление вентиляторами NVIDIA
Написано vatfree 20 октября 2019 - 11:15
афтербёрнере под линуху?
- 2
#124862 Автоматическое управление вентиляторами NVIDIA
Написано vatfree 17 октября 2019 - 02:20
Добрый день,
я небольшой специалист в программиоровани, но с помощью инета и друзей написал вот такой скрипт. запускаю его в автостарте и он удерживает температуру процессоров в пределенном диапазоне.
скрипт следит за любым количеством карт, нужно указать сколько. держит температуру в диапазоне 72-77 градусов. если температура выше 77 - увеличивает скорость вентиляторов. если ниже 72 - снижает. причем увеличивает быстро, снижает неторопливо, но скоростью можно управлять.
#----------------------------------------------------------------------
# Description: adaptive fan speed management for NVIDIA GPUs on Linux
# to maintain the given temperature
#----------------------------------------------------------------------
FSCTLLOG="/home/srgmnr/Mining/log/fsctl.log"
numberofgpu=2 #how many GPU do you have
polltime=3 # in seconds
remindevery=600 #seconds
targethi=77 # HI target GPU temperature
targetlow=72 # LOW target GPU temperature
fansmin=35 # minimum GPU fan speed
fansmax=90 # maximum GPU fan speed
faninit=35 # initial GPU fan speed
stepup=5 #increase step for fan speed
stepdown=1 #decrease step for fan speed
trap ctrl_c INT
ctrl_c() {
echo >> $FSCTLLOG
echo -n "Resetting GPU fan management: ">> $FSCTLLOG
for (( i=0; i<numberofgpu; i++)); do
nvidia-settings -a "[gpu:$i]/GPUFanControlState=0">> $FSCTLLOG
done
exit 0
}
setspeed()
{
echo "GPU $1 (temp=$4) fan speed changed from $2 to $3">> $FSCTLLOG
nvidia-settings -a "[fan:$1]/GPUTargetFanSpeed=$3" >> $FSCTLLOG
}
#start script
echo "Fan Speed Control script started" > $FSCTLLOG
date >> $FSCTLLOG
#export DISPLAY=:0
echo "Lets check all $numberofgpu yours GPU(s)..." >> $FSCTLLOG
for (( i=0; i<numberofgpu; i++)); do
result=`nvidia-settings -a [gpu:$i]/GPUFanControlState=1 | grep "assigned value 1"`
test -z "$result" && echo "Fan speed management is not supported on this GPU. Exiting">> $FSCTLLOG && exit 1
nvidia-settings -a "[gpu:$i]/GPUFanControlState=1" -a "[fan:$i]/GPUTargetFanSpeed=$faninit" >> $FSCTLLOG
done
#and than let's rock!
secondstoremind=0
while :; do
for (( i = 0; i < numberofgpu; i++ )); do
temp=`nvidia-settings -q [gpu:$i]/GPUCoreTemp -t | head -1`
fanspeed=`nvidia-settings -q [fan:$i]/GPUCurrentFanSpeed -t | head -1`
if [ $temp -lt $targetlow ]; then
fannewspeed=$(($fanspeed-$stepdown))
if [ $fannewspeed -lt $fansmin ]; then
fannewspeed=$fansmin
fi
fi
if [ $temp -gt $targethi ]; then
fannewspeed=$(($fanspeed+$stepup))
if [ $fannewspeed -gt $fansmax ]; then
fannewspeed=$fansmax
fi
fi
if [ $fannewspeed -ne $fanspeed ]; then
setspeed $i $fanspeed $fannewspeed $temp
fi
done
sleep $polltime
secondstoremind=$(($secondstoremind+$polltime))
if [ $secondstoremind -gt $remindevery ]; then
secondstoremind=0
echo>> $FSCTLLOG
echo "... another $remindevery seconds left">> $FSCTLLOG
nvidia-smi>> $FSCTLLOG
fi
done
- 1
- MINING CLUB торгово-информационный портал для майнеров
- → Просмотр профиля: Репутация: vatfree
- Privacy Policy