Настройка параметров модуля ядра Nvidia

Вопрос или проблема

Я пытаюсь установить некоторые параметры модуля ядра для модуля ядра nvidia (в частности, NVreg_RegisterForACPIEvents=1 и NVreg_EnableMSI=1), но независимо от того, какой метод я использую для их установки, они не отображаются как установленные с командой # systool -vm nvidia. Я пробовал добавлять конфигурационные файлы как в /etc/modprobe.d, так и в /etc/modules-load.d, а также добавлял их в командную строку ядра в конфигурации grub, но ни один из этих методов, похоже, не работает. Все эти методы основаны на моем опыте с Arch, поэтому мне было интересно, существует ли какой-то особый способ настройки параметров модуля ядра в Ubuntu? Был бы признателен за любую информацию по этому поводу.

Я столкнулся с той же проблемой, пытаясь изменить параметр NVreg_RestrictProfilingToAdminUsers.

https://developer.nvidia.com/nvidia-development-tools-solutions-err_nvgpuctrperm-permission-issue-performance-counters

Вышеприведённая ссылка может быть полезной. Чтобы временно изменить параметр, выполните указания в ссылке. Если вы попробуете выгрузить модуль nvidia, вы можете столкнуться со следующей ошибкой.

modprobe: FATAL: Module nvidia is in use

Тогда вам следует отключить службу nvidia-persistenced.service.

systemctl stop nvidia-persistenced.service

После этого вы можете продолжить

modprobe -r nvidia_modest nvidia

Затем вы можете перезагрузить модуль nvidia с параметром

modprobe nvidia [parameter_name]=[value]

Я не знаю, почему параметры не отображаются в systool -vm, но изменённый параметр вступает в силу.

В противном случае, если вы хотите добавить конфигурацию в /etc/modprobe.d/, вам следует пересобрать initrd с помощью update-initramfs -u

.

Ответ или решение

Настройка параметров модуля ядра Nvidia в Ubuntu может вызвать некоторые трудности, особенно если вы привыкли работать с Arch Linux, где процесс может немного отличаться. В вашем случае параметр NVreg_RegisterForACPIEvents=1 и NVreg_EnableMSI=1 не удается успешно задать стандартными методами, и они не отображаются с помощью команды systool -vm nvidia.

Вот подробное руководство по настройке данных параметров в Ubuntu:

  1. Добавление конфигурации в /etc/modprobe.d/:
    Создайте или отредактируйте файл настроек, например, /etc/modprobe.d/nvidia.conf и добавьте следующие строки:

    options nvidia NVreg_RegisterForACPIEvents=1
    options nvidia NVreg_EnableMSI=1

    После этого необходимо обновить initramfs, чтобы изменения вступили в силу:

    sudo update-initramfs -u
  2. Работа с ядром и GRUB:
    Если вы добавляете параметры непосредственно в строку загрузки ядра, вам необходимо отредактировать /etc/default/grub и добавить параметры в GRUB_CMDLINE_LINUX_DEFAULT. После редактирования обновите конфигурацию GRUB:

    sudo update-grub
  3. Перезагрузка и проверка:
    Перезагрузите систему для применения изменений. Команда systool -vm nvidia может не отображать параметры, тем не менее, это не обязательно означает, что они не применены. Фактическое влияние параметров можно определить по соответствию поведения системы.

  4. Временные изменения через модуль управления и диагностика:
    Чтобы временно отключить модуль и перезагрузить его, вам необходимо остановить сервис nvidia-persistenced:

    systemctl stop nvidia-persistenced.service

    Затем удалите модуль:

    sudo modprobe -r nvidia_drm nvidia_modeset nvidia

    И снова загрузите модуль с параметрами:

    sudo modprobe nvidia NVreg_RegisterForACPIEvents=1 NVreg_EnableMSI=1

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

Эти шаги должны помочь настроить параметры ядра Nvidia под Ubuntu. Продолжайте анализировать воздействие каждого способа и корректируйте конфигурацию в зависимости от результата, достигаемого каждым из методов.

Оцените материал
Добавить комментарий

Капча загружается...