Linux nvidia power limit

Linux Изменение частоты памяти в Ubuntu 20.04 на 30xx серии, на _нескольких_ картах

с помощью GreenWithEnvy я могу регулировать fan и настройки разгона и вольтажа на карте gpu:0 (memory, gpu, pl), но не могу на gpu:1, поскольку она не отображается в GreenWithEnvy.
Через командную строку я могу регулировать разгон GPU,

но облазив практически всё, до чего дотянулся, _не нашел_ как сделать разгон памяти под Ubuntu из командной строки, потому-что при

разгон памяти не меняется.

Вопрос следующий:
Как в Ubuntu изменить разгон памяти на 2-ой, 3-ей и пр картах?

PS. Если тема избитая, ткните плиз. Вроде все облазил.

krozz

Друг форума

nvidia-settings -a [gpu]/GPUMemoryTransferRateOffset[2]=500

Сначала в Nvidia X Server смотрите в каком стейте (Perfomance Level) карта под нагрузкой работает и этот стэйт вписываете на место двойки. Если разные карты на разных стэйтах, то указываете для каждой карты дублируя строку и прописывая номер карты:

nvidia-settings -a [gpu:0]/GPUMemoryTransferRateOffset[2]=500

qubepool

Свой человек

nvidia-settings -a [gpu]/GPUMemoryTransferRateOffset[2]=500

Сначала в Nvidia X Server смотрите в каком стейте карта под нагрузкой работает и этот стэйт вписываете на место двойки. Если разные карты на разных стэйтах, то указываете для каждой карты дублируя строку и прописывая номер карты:

nvidia-settings -a [gpu:0]/GPUMemoryTransferRateOffset[2]=500

krozz

Друг форума

В разделе PowerMizer видеокарты смотрите номер активного Perfomance Levels.

PS. Хотя странный момент, иногда надо указывать номер +1. Попробуйте и так, и эдак.

chdr

Друг форума
nvidia-settings -a [gpu:0]/GPUMemoryTransferRateOffsetAllPerformanceLevels=xxx nvidia-settings -a [gpu:0]/GPUGraphicsClockOffsetAllPerformanceLevels=xxxx

Если вы лочите ядро (—lock-gpu-clocks/-lgc) то power limit (—power-limit) не меняйте, лока ядра достаточно, поэтому чтобы снизить pl просто выставляете лок по ядру ниже.

И самое главное (сам об это споткнулся когда новый риг собирал), что у разных тулов разный индекс карт, то есть

Читайте также:  Проверить версию openssl linux

это могут быть совсем разные карты (у меня так было и я блин где-то час убил пока не понял что по индексу 0 были разные карты и риг постоянно зависал после применения разгона, оказалось что часть данных выставляясь в другую карту которая подобный разгон не держала и поэтому вешала риг)

Чтобы более менее было понятно, вот мой алгоритм для разгона 1660s (все делает скрипт на самом деле)

1. Выставляю power limit через лок ядра

3. Разгон ядра через core offset, для эфира он не нужен, поэтому ставлю 0 (можно не трогать по умолчанию стоит 0)

пс. Сначала попробуйте разгон по памяти сделать через приложение Nvidia X Server, там найдите свою карту и там на одном из опций (PowerMizer вроде) будет возможность изменить memory/core offset, если это будет не активно, значит вы не включили возможность оверклокинга для карты, это нужно делать один раз через nvidia-xconfig

qubepool

Свой человек

nvidia-settings -a [gpu:0]/GPUMemoryTransferRateOffsetAllPerformanceLevels=-1004
nvidia-settings -a [gpu:0]/GPUGraphicsClockOffsetAllPerformanceLevels=0

не проходят на 2-ой карте, остальные выполняются.
После каждой выполненной команды пишутся подтверждения, после этих двух нет.
Вот что получается.

Вложения

krozz

Друг форума

не проходят на 2-ой карте, остальные выполняются.
После каждой выполненной команды пишутся подтверждения, после этих двух нет.
Вот что получается.

Ну это все просто, к первой карте подключен монитор, ко второй — нет. Вы xorg.conf правили?

Самое простое, попробуйте ко второй карте переходник hdmi-vga подключить или какой эмулятор монитора.

qubepool

Свой человек

воткнул в этот же монитор (у него 2 displayports) в другую карту, но не хочет чего-то он находится автоматом.
Попробую продублировать его в xorg.conf для 2-ого устройства.

krozz

Друг форума

воткнул в этот же монитор (у него 2 displayports) в другую карту, но не хочет чего-то он находится автоматом.

qubepool

Свой человек

Да, конечно. Попробую завтра (сегодня вечером) воткнуть HDMI переходник на DVI в эту карту. С подсоединенным в эту карту, темже дисплеем, через displayport, не хочет монитор как-либо проявляться.
Вообще 2 карты nvidia с разными дисплеями должны же одновременно работать в ubuntu?

Читайте также:  Realtek linux drivers wireless network

Shatll

Друг форума

chdr

Друг форума

не проходят на 2-ой карте, остальные выполняются.
После каждой выполненной команды пишутся подтверждения, после этих двух нет.
Вот что получается.

у вас на второй карте не разрешен оверклокинг, нужно перегенерить /etc/X11/xorg.conf как вам писали выше.
сначала удаляем файл

и перезагружайтесь. Если после перезагрузки стало как будто монитор не подключен в систему, значит в xorg.conf основная карта стала другой, переткните в другую карту шнур монитора. После этого должны появиться настройки разгона для второй карты.

И еще забыл написать, что у меня скрипт также переключает карту в режим Maximum Performance (на вашем скрине это выпадающее меню Preferred mode)

по документации значение 0 это Adaptive, а значение 2 это Auto

Ну и один лайфхак)) У меня иногда вис риг, прям совсем, то есть по ваттметру комп включен и даже карты/проц крутят вентилятор и по ваттметру потребление как на холостом ходу. Подключаешь монитор — не работает, просто черный экран. Зайти по ssh с другой машины не заходит. Долго ломал голову и читал системные логи, в итоге какая-то ежечасная кроновская задача запускалась и иногда валила систему, и уже не помню как но вычислил на 99% что это была Ubuntu Updater, который каждый час проверял наличие обновление и раз в несколько дней мог зафэйлиться и положить систему. Поэтому рекомендую вам выключить проверку обновлений, там где то есть менюшка где надо выставить интервал в never.

Источник

raydouglass / nvidia-tdp.service

The original inspiration for this gist can be found here.

Set Nvidia power limit after boot

These instructions will create a systemd service that runs after booting up, to automatically invoke nvidia-smi to set the power limit.

Normally any set power limit is reset between reboots.

Читайте также:  Запретить iptables порты linux

Reducing the power limit to ~80-90% may increase longevity in cases where the gpu is expected to run 24/7 at 100% load, for instance in scientific computing or mining. On the other hand, and increased power limit may increase performance and yield better overclocking results.

Check your current power settings

First, check your current power settings with

Example output on RTX 2080 TI:

==============NVSMI LOG============== Timestamp : Sun Nov 7 17:02:10 2021 Driver Version : 495.44 CUDA Version : 11.5 Attached GPUs : 1 GPU 00000000:41:00.0 Power Readings Power Management : Supported Power Draw : 291.63 W Power Limit : 300.00 W Default Power Limit : 300.00 W Enforced Power Limit : 300.00 W Min Power Limit : 100.00 W Max Power Limit : 366.00 W Power Samples Duration : 2.40 sec Number of Samples : 119 Max : 313.22 W Min : 284.31 W Avg : 296.45 W 

The field of interest is Power Limit , which will be reduced from 300 W to 275 W below.

Set up a service for systemd

  • Save the files nvidia-tdp.service and nvidia-tdp.timer below to /etc/systemd/system
    • -pm 1 enables persistance mode
    • Edit -pl 275 to what is appropriate for your gpu

    Example output after reboot:

    > sudo nvidia-smi -q -d POWER ==============NVSMI LOG============== Timestamp : Sun Nov 7 17:21:16 2021 Driver Version : 495.44 CUDA Version : 11.5 Attached GPUs : 1 GPU 00000000:41:00.0 Power Readings Power Management : Supported Power Draw : 276.79 W Power Limit : 275.00 W Default Power Limit : 300.00 W Enforced Power Limit : 275.00 W Min Power Limit : 100.00 W Max Power Limit : 366.00 W Power Samples Duration : 2.40 sec Number of Samples : 119 Max : 283.82 W Min : 237.65 W Avg : 273.43 W 

    The procedure above will set the same power limit to all nvidia gpus on your system. Use flags -i 0 , -i 1 and so on, when calling nvidia-smi to select gpu 0, gpu 1. For instance:

    ExecStart=/usr/bin/nvidia-smi -pm 1 && /usr/bin/nvidia-smi -pl 275 -i 0 && /usr/bin/nvidia-smi -pl 250 -i 1 

    would set the first gpu to 275 W and the second to 250 W.

    Источник

Оцените статью
Adblock
detector