Графическое ускорение linux nvidia

Linux для человеков!

Обзоры

Фотогалереи

Помощь при использовании сайта

Новое из блога

Разгон и энергосбережение видеокарт nVidia в GNU/Linux

Для начала опишу самый простой способ который подойдет для десктопа, так как в этом случае не приходится думать о энергосбережении. Данный способ будет работоспособен только при условии что Вы уже установили проприетарный драйвер nvidia и GUI мордочку nvidia-settings к нему. (Обычно устанавливается по зависимостям)

Для начала нужно определиться с тактовой частотой и сделать возможным оверклокинг, так как по умолчанию эта опция отключена.

Для этого нужно открыть файл

и в секцию Device вписать опцию Coolbits.

После чего открыть в домашней директории файл

/.xinitrc и вписать в него следующее:

Останавливаем X сервер и выгружаем ядреный модуль nVidia. Заново стартуем X сервер и видим что в nvidia-settings появилось новое меню под названием Clock Frequencies с помощью которого теперь можно менять частоты графического процессора, видеопамяти в разных режимах (2D, 3D). Теперь нужно определить частоту до которой можно разогнать железку без ущерба стабильности. Я рекомендую делать это с помощью «Auto detect» находящееся в том же самом меню, ибо подбирая частоты наугад вы можете потерять гораздо больше времени прежде чем заставите работать видеокарту стабильно. В моем случае для nVidia GT 240 частоты в 2D режиме (GPU — 270 Mhz, Memory — 162 Mhz). В режиме 3D (GPU — 610 Mhz, Memory — 1123 Mhz). В вашем случае конечно эти значения будут отличаться. Выявив оптимальные частоты в обоих режимах следует их на время запомнить (или записать) потому как они понадобятся для того, чтобы выставлять эти значения при старте системы, так как после рестарта X сервера эти значения будут сбрасываться на умолчальные. Для предотвращения этого откроем уже известный нам

/.xinitrc и приведем его к такому виду заменив мои значения частот на свои.

Думаю ничего объяснять дополнительно не надо. При старте системы все содержимое

/.xinitrc будет выполняться и изменять частоты на нужные нам.

Теперь о PowerMizer.
В моем случае возможны только два режима Power Mizer. Это Adaptive (адаптивный — изменение уровня производительности в зависимости от нагрузки) и Maximum Perfomance (максимальная производительность — работа всегда на повышенных частотах). В Вашем случае опять же их может быть больше, тем более если у Вас ноутбучный видеоадаптер.

Настраивая частоты также невозможно не увидеть, что в меню Power Mizer имеются и уровни производительности. Эти уровни (частоты на которых работает видеокарта) изменяются в соответствии с установленным режимом Power Mizer. Для примера скажу, что в режиме Adaptive при отсутствии нагрузки частоты будут соответствовать «нулевому» уровню и будут минимально возможными, а при запуске 3D приложений частоты поднимутся до максимума и будут соответствовать уровню 2.
Чтобы узнать какие «уровни производительности» доступны для Вашей видеокарты нужно ввести в терминале

Для моей десктопной видеокарты имеются три различных уровня производительности. Отличаются они как Вы уже заметили частотами. Нулевой (perf=0) это самые низкие частоты и самое низкое энергопотребление и соотвественно второй (perf=2) самые высокие частоты и самое высокое энергопотребление.

Читайте также:  Самый удобный linux после windows

Для домашнего компа и максимального разгона видеокарты не требуется особой мудрости и нужно лишь выбрать глобальную политику «Всегда использовать максимальные частоты» с помощью Power Mizer Mode добавив код

в самую первую строку уже открытого файла

/.xinitrc. Эту переменную можно поменять и из nvidia-settings, но опять же после рестарта иксов все эти значения сбросятся.

Для пользователей ноутбуков несколько сложнее, так как продлить время жизни от батареи за счет снижения частот GPU тогда когда это нужно — задача первостепенная. Самое плохое то, что у меня нет ноутбука с nVidia карточкой на борту поэтому напишу лишь только теорию. В принципе все шаги описанные выше применимы и для ноутбуков. Разница лишь в том, что в случае с ноутбуком полезно настроить поведение видеокарты при различных источниках питания.
При настройке политик следует задать следующие опции в /etc/X11/xorg.conf в секции Device:

Это будет означать, что при питании от батареи будет использовано максимальное энергосбережение, а при притании от сети частоты будут меняться в зависимости от нагрузки.

Подробнее о приведенных опциях. PowerMizerDefault задает умолчальные политики при питании от батареи. В данном случае 0x3 это режим максимального энергосбережения; 0x1 это максимальная производительность; 0x2 это адаптивный режим;
PowerMizerDefaultAC задает умолчальные политики при питании от сети. Как и в предыдущем случае имеет значения 0xN.

PerfLevelSrc опция задающая уровень производительности при различных источниках питания. Задаются параметры в соответствии со следующим правилом

Учитывая то, что количество доступных профилей Power Mizer и уровней производительности для многих карт будет различным, для достижения результата нужно поиграться с величинами PrefLevelSrc и PowerMizerDefault. У меня лично регулировка частот вообще не работает если ее задавать для определенного источника питания.
Если кто либо разобрался в управлении питанием карт nVidia лучше — жду Ваши комменты.

Источник

Электрический блогнот

мои заметки на полях

контроль и разгон графических карт NVIDIA в Linux

Многие геймеры, майнеры и просто любители повозиться с multimedia давно используют видеокарты NVIDIA для своих целей. Используют на «всю катушку». Разработчики видеокарт позволили простым людям создавать программы для запуска на видеокартах, используя мощь всех CUDA ядер. Попутно видеокарты стали комплектоваться оперативной памятью в несколько гигабайт. После этого простая видеокарта превратилась в компьютер-в-компьютере. Поэтому контроль графических карт NVIDIA является первостепенной задачей для тех, кто хочет выжать по максимуму и одновременно добиться того, чтобы карта работала, как можно дольше.

nvidia-smi

Для контроля состояния видеокарты мы будем использовать утилиту nvidia-smi (NVIDIA System Management Interface), которая входит в комплект драйверов производимых компанией NVIDIA для своих карт.

Если у вас Linux, то после установки NVIDIA драйверов nvidia-smi можно найти в папке:

Nvidia-smi является консольной программой (у нее нет графического интерфейса) и для ее запуска необходимо воспользоваться командной строкой.

Полезные команды

С моей точки зрения самой полезным способом запуска nvidia-smi, является запуск без параметров:

вы получите много полезной информации структурированной в виде простенькой таблички. Давайте запусти несколько приложений нагружающих видеокарты и посмотрим, что выдаст nvidia-smi. Для этого воспользуемся примерами, которые поставляются вместе с NVIDIA Cuda Toolkit (установка этого Toolkit описана здесь). Эти примеры точно нагрузят нашу видеокарту 🙂 А так же запустим конвертирование видео из одного формата в другой с помощью утилиты FFmpeg, которая проводит кодирование/раскодирование видео на графическом ускорителе видеокарты.

Глядя на скриншот мы видим, что у нас запущены 4 приложения использующих ресурсы видеокарты:

  • Xorg — графическая подсистема Linux. Использует драйвер NVIDIA, поэтому она здесь в списке;
  • SimpleGL — пример из Cuda Toolkit;
  • marchinCubes — еще пример из Cuda Toolkit;
  • FFmpeg — в нашем тесте он занимается конвертированием видео с помощью NVIDIA GPU.
Читайте также:  Windows 10 удалил eset smart security

Шапка таблицы дает информацию о названии видеокарты, версии драйвера, текущем режиме работы и температуру. Все дается в понятном виде и дополнительных объяснений не требует. Рассмотрим подробнее раздел Processes, здесь каждый процесс имеет 5 параметров:

  • GPU — номер видеокарты на котором приложение запущено (если видеокарта одна, то там будет 0);
  • PID — ID процесса, по этому ID вы можете kill’ьнуть процесс обычной командой kill;
  • Type — тип приложения:
    • «G» — графическое (обычная графика, которая отрисовывается видеокартой);
    • «C» — вычислительное, например можно очень эффективно перемножать матрицы на видеокарте (CUDA ядра), но чаще всего подбирают пароли или майнят битки;
    • «G+C» — рисует и вычисляет и все это делает с помощью видеокарты.
  • Process name — название приложения;
  • GPU Memory Usage — сколько видеопамяти занимает приложение.

Чтобы получить максимум информации о состоянии видеокарты наберите:

вывалится огромная «простыня», где вы найдете всю информацию про вашу карточку.

Если установлено несколько видеокарт в системе и нужно получить информацию о какой-то карте конкретно, то нужно указать ID этой карты:

Для того, чтобы получить весь список видеокарт в системе воспользуйтесь командой:

Журнал

Для контроля состояния видеокарты в течение некоторого промежутка времени поможет журнал или log. Nvidia-smi позволяет выводить информацию о требуемых параметрах на экран или в файл для последующего анализа.

Следующая команда будет непрерывно с интервалом в 5 секунд выводить на экран информация о потреблении видеопамяти и температуре GPU:

С помощью опции «-f» можно перенаправить вывод в файл:

Еще один способ смотреть за видеокартой — это запустить nvidia-smi с ключами dmon или pmon.

С помощью dmon можно следить за общими параметрами видеокарты. Я чаще всего использую dmon для контроля загруженности чипов NVDEC/NVENC расположенных в карте NVIDIA и которые отвечают за кодирование и раскодирование видео на аппаратном уровне.

Если хотите журналировать потребление ресурсов видеокарты каждым прорцессом, то можно воспользоваться опцией pmon.

Driver Persistence

Peristence — постоянство. Если приложению нужна видеокарта, то обращение происходит сначала к драйверу, а от драйвера к видеокарте. Современные системы могут выгружать драйверы из памяти (например, понизить энергопотребление). Если приложение требует драйвер, а драйвер в это время выгружен, то система загружает драйвер. На это уходит время. Возникает лаг (lag). Чтобы лагов не было, есть возможность сделать драйвер невыгружаемым:

проверяем статус драйвера»

для того, чтобы вернуть все как было (разрешить выгружать драйвер) делаем:

и сразу же проверяем:

Следует помнить, что если вы меняли настройки видеокарты (частоту, энергопотребление), то перевод/вывод ее в Persistence сбросит все предыдущие настройки.

Разгон

По умолчанию разгон выключен. Вы не можете контролировать частоту графического процессора:

ни скорость вентилятора на видеокарте:

Для того, чтобы в nvidia-settings появилась возможность разгона, нужно добавить в файл

в секцию Section «Device» строку:

и перезагрузить компьютер. После перезагрузки в nvidia-settings станут доступны следующие опции для регулировки разгона:

настройка частоты графического процессора

настройка скорости вращения вентилятора

Следует помнить, что разгон переводит видеокарту в нестандартный режим работы и поэтому контроль ее состояния нужно осуществлять еще тщательнее.

Заключение

В данной заметке мы рассмотрели, как осуществлять контроль и разгон графических карт NVIDIA в Linux. Затронули только самые базовые принципы и лишь слегка погрузились в эту интересную тему. На простых примерах посмотрели, как следить за состоянием видеокарты, как вести логи. Слегка коснулись темы разгона. Правда зачастую уже и этого достаточно, чтобы грамотно задействовать мощь видеокарты.

Читайте также:  Вернуть безопасный режим windows 10

Источник

compizomania

Азбука в Linux для начинающих и не только. Я знаю только то, что ничего не знаю, но другие не знают и этого. Сократ

Страницы

21 ноября 2018

Nvidiux — графическая утилита для разгона Nvidia GPU в Linux

Утилита Nvidiux предоставляет удобный доступ ко всем настройкам графической подсистемы компьютера. Управляя скоростью вращения вентиляторов при увеличении частоты и напряжения питания графического процессора, можно найти идеальный баланс между производительностью и температурой.

Возможности Nvidiux (поколение видеокарт 4XX или новее):

— Управление вентилятором
— Автоматический разгон при запуске
— Графический мониторинг для 4 параметров (темп, загрузка gpu, скорость вентилятора (%) и использование графической памяти (%))
— Overvolting — повысить производительность компьютера.

Зачем разгонять видеокарту?

Прежде всего и самое главное, разгонять видеокарту следует лишь в том случае, если вы используете ваш компьютер, кроме основных функций, для компьютерных игр. Имейте это ввиду!

Разгон – увеличение частоты работы какого-либо компонента для поднятия быстродействия. Также есть и другое название — «Оверклокинг».
Суть поднятия быстродействия – это увеличение частоты, при которой работает сама видеокарта.
Увеличение быстродействия компонента (Оверклокинга) — это, пожалуй, самая основная причина, из-за которой пользователи занимаются разгоном видеокарты (или другого элемента). Чем серьёзнее подойти к разгону, тем лучше будет быстродействие. Но главное не перестараться, иначе видеокарта испортится.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ:

Использование Nvidiux может привести к аннулированию гарантии или к повреждению компьютера. Используя приведенные ниже инструкции (изменение xorg.conf) может нарушить загрузку на рабочий стол Linux, поэтому убедитесь, что вы понимаете, что делаете и знаете, как отменить изменения.
Вы были предупреждены, используйте Nvidiux на свой страх и риск .

Установка и использование Nvidiux в Ubuntu и производные

Прежде чем устанавливать Nvidiux, у вас уже должен быть активирован и работать проприетарный драйвер Nvidia.

Установка Nvidiux через репозиторий.

Откройте терминал, скопируйте и выполните следующиhttp://compizomania.blogspot.com/2018/11/nvidiux-nvidia-gpu-linux.htmlе команды:

sudo add-apt-repository ppa:nvidiux/nvidiux
sudo apt update
sudo apt install nvidiux

Примечание. Установку Nvidiux в другие дистрибутивы Linux, посмотрите на официальной странице проекта: https://github.com/RunGp/Nvidiux.

Установка Nvidiux не создаёт .desktop файл для запуска утилиты, поэтому запуск нужно производить из терминала командой:

Чтобы запустить программу и закрыть терминал.

Так как ещё не создан конфигурационный файл /etc/X11/xorg.conf, Nvidiux попросит создать его и добавить вариант CoolBits:

После перезагрузки компьютера вы будете иметь возможность использовать Nvidiux overclock Nvidia GPU.
Для открытия Nvidiux выполните одну из команд в терминале, указанных выше в статье.

В Настройках/Settings присутствуют четыре языка интерфейса, где нет русского, но, надеюсь, у вас не возникнет особых трудностей.

Теперь вы можете добавить Nvidiux в автозагрузку в последовательности, как показано на снимке:

В поле Команда (3) введите следующее значение:

sh -c ‘nvidiux —silent «/path/to/overclockingprofile.ndi»‘

Начните с создания профиля overclocking. В Nvidiux измените настройки, которые вы хотите использовать для разгона/overclocking или underclocking, а затем сохраните профиль ( Profile -> Save в верхней левой стороне программы).

Если вы решили удалить Nvidiux из системы, выполните эти команды в терминале:

sudo add-apt-repository -r ppa:nvidiux/nvidiux
sudo apt update
sudo apt remove —autoremove nvidiux

Источник

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