Настройка видеокарт
Views
Actions
Namespaces
Variants
Tools
Обзор
При установке полной версии Manjaro (т.е. с предустановленным окружением рабочего стола, кодеками и программами) команда mhwd будет автоматически выполняться программой установки GUI и CLI для автоматического определения вашей видеокарты и установки наиболее подходящего для нее драйвера. Будут ли установлены свободные или проприетарные драйверы, будет зависеть от вашего первоначального выбора использования свободных или несвободных видеодрайверов при загрузке. В противном случае, необходимо будет выполнить команду mhwd вручную как часть процесса после установки минималистичного NET-издания Manjaro.
Для новичков рекомендуется использовать "Обнаружение оборудования" в Менеджере настроек Manjaro для изменения или установки новых графических драйверов
.
Для средних и опытных пользователей также можно использовать команду mhwd для установки, переустановки и удаления установленных видеодрайверов в любое время, как показано ниже.
Автоматическое распознавание и установка
Это рекомендуемый метод обнаружения и установки видеодрайверов. Синтаксис метода автоматической установки следующий:
Ниже приводится описание команд, используемых для автоматизированного метода:
- -a: автоматическое обнаружение и установка соответствующего драйвера
- [pci или usb]: установка соответствующего драйвера для устройств, подключенных к компьютеру через pci или через usb (опять же, на данном этапе разработки mhwd поддерживает только pci)
- [free или nonfree]: установка либо бесплатных драйверов (например, предоставленных сообществом Linux), либо несвободных драйверов (например, предоставленных производителями оборудования)
- 0300: определить, что драйвер должен быть установлен для видеокарты (0300 - это идентификатор для видеокарт. По мере развития команды mhwd будут использоваться новые идентификаторы для других аппаратных устройств).
Например, следующая команда приведет к автоматическому обнаружению и установке наилучшего доступного проприетарного драйвера для видеокарты, подключенной через pci-соединение:
В противном случае следующая команда приведет к автоматическому обнаружению и установке лучшего из доступных бесплатных драйверов для видеокарты, подключенной к pci-порту:
Ручное распознавание и установка
Сам по себе подход "сделай сам" является относительно простым и понятным с помощью команды mhwd. Его следует применять в два этапа:
1. Определить соответствующий драйвер для установки, а затем
2. Установить его
Определение доступных драйверов
Прежде чем вручную устанавливать видеодрайвер, необходимо определить, какие драйверы доступны для вашей системы. Чтобы перечислить доступные драйверы, используйте следующий синтаксис:
Использование этой команды без дополнительных опций выведет список базовой информации для всех доступных драйверов устройств, подключенных к вашей системе. Все драйверы видеокарт будут иметь префикс (video-) в своем названии. Основная информация, предоставленная для всех перечисленных драйверов, будет следующей:
- Название
- Версия
- Свободная или проприетарная, и
- PCI или USB соединение
Более подробный список установленных драйверов можно получить, введя:
Подробный список предоставит следующую информацию:
- Название
- Версия
- PCI или USB соединение
- Описание
- Приоритет
- Свободная или проприетарная
- Зависимости
- Конфликты
- Идентификатор класса (например, '0300' для драйверов видеокарт), и
- Идентификатор поставщика
Кроме того, использование фильтра --pci в следующем примере выведет список подробной информации только для драйверов, доступных для устройств (например, видеокарт), использующих внутреннее PCI-соединение:
Установка драйвера
Для установки драйвера видеокарты используйте следующий синтаксис:
Ниже приведено описание команд, используемых для ручной установки драйвера:
- -i: Установить драйвер
- [pci]: Установка драйвера для устройства, подключенного к компьютеру через pci (например, видеокарты).
- [название драйвера]: Название устанавливаемого драйвера
Например, для установки проприетарного драйвера видеокарты nvidia используется следующая команда:
Принудительная переустановка драйвера
Чтобы принудительно переустановить существующий драйвер без его предварительного удаления, используйте следующий синтаксис:
Например, чтобы принудительно переустановить ранее установленный драйвер видеокарты nvidia можно использовать следующую команду:
Удаление установленного драйвера
В некоторых случаях может потребоваться удалить установленный драйвер видеокарты. Аналогично ручной установке драйвера видеокарты, для его удаления необходимо выполнить два шага:
1. Распознать установленный драйвер
2. Удалить распознанный драйвер
В конце концов, будет трудновато удалить установленный драйвер, если вы не знаете как он называется!
Распознавание установленных драйверов
To identify and list Manjaro's installed drivers - including the graphics driver to be removed, the syntax is:
Using this command without the additional options will list the basic information of all the drivers currently installed on your system. Once again, all drivers for graphics cards will have the prefix (video-) in their name. As with listing drivers available for your system, the -d option used in the following command will list detailed information:
This information may prove useful to determine any otherwise unforeseen consequences or problems upon removing a driver. And again, it is also possible to filter your list of installed drivers by whether they are used on hardware connected via pci or usb. In this instance, a detailed list will be generated only for installed drivers used on hardware with a PCI connection:
One other way of reporting drivers installed andin use is using the inxi
tool.
Удаление установленных драйверов
To remove an installed driver, the syntax is:
For example, to remove the installed driver for a nvidia graphics card (connected internally via pci), the following command would be used:
Проверка конфигурации
You can check configuration with:
And if needed fix issues with:
Make sure the path to xorg config file is valid.
Note about ati, xorg file and login artifacts or kicad: if you get artifacts upon logging in or if kicad rendering and zooming is slow, try adding [Option "EXAPixmaps" "off"] in the "Device" section of xorg config file. See here.
Двойной GPU
Разгрузка ПЕРВИЧНОГО GPU
If your hardware includes more than one GPU card you can make use of PRIME offloading. PRIME is a technology used to manage hybrid graphics found on recent desktops and laptops (Optimus for NVIDIA, AMD Dynamic Switchable Graphics for Radeon). PRIME detects both cards and automatically selects Intel card by default; using the more powerful discrete graphics card, when called, for more demanding applications.
In Manjaro this will automatically be available for hybrid graphics systems using intel/modesetting for the integrated card and free drivers (AMDGPU or Nouveau) for the dGPU.
You may choose to run a program with a specific GPU, prepending the application's command with DRI_PRIME=x, where x is the card priority number.
For example, to run an application using the second card prepend the application command with DRI_PRIME=1
To use the 1st card (usually when the CPU has an embedded GPU, this is used)
If you want to always run some application with the discrete gpu, you may copy that application's .desktop file to ~/.local/share/applications/
and edit the "Exec" property
Some applications (usually games like steam) may have an embedded option to specify the command line, where it is preferred to use this way.
For example, in Steam, select a game - that you want to run using your discrete Nvidia card - from the Library page of the Steam client, right-click, and select Properties. Click the SET LAUNCH OPTIONS... button and specify for the command line options followed by the default launch hook %command%.
DRI_PRIME=1 %command%
To use the dGPU by default see Reverse Prime
Проприетарные (несвободные) драйвера NVIDIA
If you have a Nvidia card, you have the option to use the proprietary (closed source = non-free) drivers instead of the open source (free) nouveau driver.
For Legacy/older nvidia cards, Manjaro maintains older drivers for compatibility. In these cases the driver name is different, instead of nvidia it is nvidia-390xx or nvidia340xx, whether in nvidia-only or bumblebee mhwd driver configuration.
When you install the non-free driver, mhwd includes a Nvidia utility "Nvidia Settings Utility" that can help you configure several settings. You can find this utility in your GUI Applications Menu or start it from a terminal
If you are using bumblebee, the nvidia utility needs a special command
Nvidia Optimus
For Optimus laptops or dual GPU hardware with intel and nvidia GPUs, you have three options to utilize the card driver usage at your preference or your hardware capabilities.
PRIME (mhwd default)
When you install Manjaro with the non-free option selected from Grub menu, or when you use automatic driver installation, PRIME or bumblebee is installed by default, depending on support for your GPU, PRIME being preferred. In these cases, the mhwd driver is named "video-hybrid-intel-nvidia-***xx-prime" or "video-hybrid-intel-nvidia-***xx-bumblebee".
Configure The Resolution/Refresh Rate
1. Start nvidia-settings utility
2. Change resolution and refresh rate in 'X Server Display Configuration' tab.
3. Hit the 'Save to X Configuration File' button and save to /etc/X11/mhwd.d/nvidia.conf
4. Now start your terminal and enter the following command to complete the process:
Настройка параметров X Screen (настройки OpenGL, сглаживание, X Server XVideo)
1. Start nvidia-settings utility
2. Change settings in X Server XVideo Settings, OpenGL and Antialiasing, in the 'X Screen' tab.
3. Click on 'nvidia-settings configuration' tab and click on the 'Save Current Configuration' button.
4. Save the .nvidia-settings-rc to the default location specified (/home/[your account name])
5. Edit the .xinitrc file with your preferred text editor. For example, if you use gedit, run this in your terminal:
6. Once opened, add the following line into the configuration file:
7. Save and exit.
Настройки Nvidia для особых случаев
In case your monitor is not entering powersave mode (DPMS), try adding `Option "HardDPMS" "true"` in your Xorg monitor section. For example:
Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor0" VendorName "Unknown" ModelName "BenQ ZOWIE XL LCD" HorizSync 30.0 - 160.0 VertRefresh 56.0 - 144.0 Option "DPMS" Option "HardDPMS" "true" EndSection
After forum issue
nvidia-prime
Manjaro also offers an easy way to use PRIME with proprietary Nvidia drivers.
Simply select and install an 'nvidia-prime' profile through MSM or mhwd (such as video-hybrid-intel-nvidia-440xx-prime) and ensure the package nvidia-prime is installed.
Then to use the discrete Nvidia card it works the same as PRIME offloading above but uses a different command. Prepend the application command with prime-run. For example:
For more info see archival post on early adoption of PRIME
Bumblebee
Bumblebee configuration is mainly developed to help minimize laptop battery consumption, since Nvidia usually consumes significant power, while Intel cards are more power efficient. So, bumblebee detects both cards and automatically selects Intel card by default and can use the Nvidia for more demanding applications. For an application to use the Nvidia card, prepend the application command with optirun or primusrun. For example:
If you want to specifically run some application with the nvidia driver, you may edit that application's .desktop file "Exec" property, or run it in terminal like this
Exec=primusrun chromium
Some applications (usually games like steam) may have an embedded option to specify the command line, where it is preferred to use this way.
For example, in Steam, select a game - that you want to run using your discrete Nvidia card - from the Library page of the Steam client, right-click, and select Properties. Click the SET LAUNCH OPTIONS... button and specify for the command line options followed by the default launch hook %command%.
primusrun %command%
If you have problems with a bumblebee setup, refer to this Forum Tutorial for advice.
Смотрите также
Более легкий путь
You may use a GUI version of mhwd in Manjaro Settings Manager#Hardware Detection
- With this tool you can:
- - install graphic driver
- - switch graphic driver
https://www.youtube.com/watch?v=UAFGukpEIJw
Как проверить драйвер
Example output command:
Nvidia driver ( proprietary driver )
$ glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 660/PCIe/SSE2
OpenGL core profile version string: 4.3.0 NVIDIA 331.49
OpenGL core profile shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.4.0 NVIDIA 331.49
OpenGL shading language version string: 4.40 NVIDIA via Cg compiler
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
Nouveau , Gallium from Mesa ( open source driver )
$ glxinfo | grep OpenGL
OpenGL vendor string: nouveau
OpenGL renderer string: Gallium 0.4 on NVE6
OpenGL core profile version string: 3.1 (Core Profile) Mesa 9.2.5
OpenGL core profile shading language version string: 1.40
OpenGL core profile context flags: (none)
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 9.2.5
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
Intel driver from Mesa ( open driver )
$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Desktop
OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.0.6
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 11.0.6
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.0.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions: