Linux
完全在 Nvidia 專用顯卡上執行您的 Linux(顯卡)?
我正在執行 ArcoLinux,幾個月來我一直在努力弄清楚如何在 Nvidia 專用 GPU 上完全執行我的Optimus 筆記型電腦。我該怎麼做呢?我聽說那裡有多種選擇,但我不知道如何解決!那麼如何在 Linux 上享受我強大的NVIDIA GeForce GTX 1650 Ti Mobile呢?
有什麼想法或設置可以幫助我在我的 Nvidia GPU 上執行任何與 GPU 相關的任務嗎?
我也有一段時間遇到這個問題,直到我發現了一個實用程序來完成這一切。您可以使用ArchWiki了解 Optimus 筆記型電腦的工作原理。然後你有多種選擇,但我建議執行optimus-manager 我用 Gnome 執行 ArcoLinux,我的規格也是:NVIDIA GeForce GTX 1650 Ti Mobile。我必須說它執行完美。到目前為止,我沒有遇到任何問題 - 至少 1 年。
安裝後
nvtop
應該是這樣的:Device 0 [NVIDIA GeForce GTX 1650 Ti] PCIe GEN 1@ 8x RX: 0.000 KiB/s TX: 0.000 KiB/s GPU 360MHz MEM 405MHz TEMP 43°C FAN N/A% POW 2 W GPU[|| 5%] MEM[|||| 0.413Gi/3.820Gi] ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ 100│GPU0 % │ │GPU0 mem% │ │ │ │ │ │ │ 75│ │ │ │ │ │ │ │ │ │ 50│ │ │ │ │ │ │ ┌───┐ ┌───┐ │ │ ┌───┘ │ ┌───┐ │ │ │ 25│ │ │ ┌───┐ ┌───┐ │ └───────┘ │ │ │ │ │ │ │ │ │ │ └─────┐ │ │────┐ ┌─────┘ │ ┌───────┘ └───┐ │ │ ┌───────┐ ┌───────────┐ │ │ │ │────┴─────┴─────────────┼───┼───────────────┴───┴───┴─┴───────┴───┴───────────┴───┴─────────────────────┴───────┬─│ │ └───┘ └─│ 0│ │ └──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ 115254 me 0 Graphic 0% 104MiB 3% 1% 223MiB /usr/lib/brave-bin/brave --type=gpu-process --field-trial- 1827 me 0 Graphic 0% 43MiB 1% 1% 447MiB /usr/bin/gnome-shell 114827 me 0 Graphic 0% 32MiB 1% 0% 160MiB /usr/lib/slack/slack --type=gpu-process --field-trial-hand 123952 me 0 Graphic 0% 8MiB 0% 3% 62MiB alacritty 164054 me 0 Graphic 0% 8MiB 0% 0% 57MiB alacritty
我希望這有幫助!:)
optimus-manager --status
如果您完全在專用卡上執行,這是應該給出的輸出:optimus-manager --status Optimus Manager (Client) version 1.4 Current GPU mode : nvidia GPU mode requested for next login : no change GPU at startup : nvidia Temporary config path: no
這是我的
/etc/optimus-manager/optimus-manager.conf
[optimus] # This parameter defines the method used to power switch the Nvidia card. See the documentation # for a complete description of what each value does. Possible values : # # - nouveau : load the nouveau module on the Nvidia card. # - bbswitch : power off the card using the bbswitch module (requires the bbswitch dependency). # - acpi_call : try various ACPI method calls to power the card on and off (requires the acpi_call dependency) # - custom: use custom scripts at /etc/optimus-manager/nvidia-enable.sh and /etc/optimus-manager/nvidia-disable.sh # - none : do not use an external module for power management. For some laptop models it's preferable to # use this option in combination with pci_power_control (see below). switching=bbswitch # Enable PCI power management in "integrated" mode. # This option is incompatible with acpi_call and bbswitch, so it will be ignored in those cases. pci_power_control=no # Remove the Nvidia card from the PCI bus. # May prevent crashes caused by power switching. # Ignored if switching=nouveau or switching=bbswitch. pci_remove=no # Reset the Nvidia card at the PCI level before reloading the nvidia module. # Ensures the card is in a fresh state before reloading the nvidia module. # May fix some switching issues. Possible values : # # - no : does not perform any reset # - function_level : perform a light "function-level" reset # - hot_reset : perform a "hot reset" of the PCI bridge. ATTENTION : this method messes with the hardware # directly, please read the online documentation of optimus-manager before using it. # Also, it will perform a PCI remove even if pci_remove=no. # pci_reset=no # Automatically log out the current desktop session when switching GPUs. # This feature is currently supported for the following DE/WM : # GNOME, KDE Plasma, LXDE, Deepin, Xfce, i3, Openbox, AwesomeWM, bspwm and dwm # If this option is disabled or you use a different desktop environment, # GPU switching only becomes effective at the next graphical session login. auto_logout=yes # GPU mode to use at computer startup. # Possible values: nvidia, integrated, hybrid, auto, intel (deprecated, equivalent to integrated) # "auto" is a special mode that auto-detects if the computer is running on battery # and selects a proper GPU mode. See the other options below. startup_mode=nvidia # GPU mode to select when startup_mode=auto and the computer is running on battery. # Possible values: nvidia, integrated, hybrid, intel (deprecated, equivalent to integrated) startup_auto_battery_mode=nvidia # GPU mode to select when startup_mode=auto and the computer is running on external power. # Possible values: nvidia, integrated, hybrid, intel (deprecated, equivalent to integrated) startup_auto_extpower_mode=nvidia [intel] # Driver to use for the Intel GPU. Possible values : modesetting, intel # To use the intel driver, you need to install the package "xf86-video-intel". driver=modesetting # Acceleration method (corresponds to AccelMethod in the Xorg configuration). # Only applies to the intel driver. # Possible values : sna, xna, uxa # Leave blank for the default (no option specified) accel= # Enable TearFree option in the Xorg configuration. # Only applies to the intel driver. # Possible values : yes, no # Leave blank for the default (no option specified) tearfree= # DRI version. Possible values : 2, 3 DRI=3 # Whether or not to enable modesetting for the nouveau driver. # Does not affect modesetting for the Intel GPU driver ! # This option only matters if you use nouveau as the switching backend. modeset=yes [amd] # Driver to use for the AMD GPU. Possible values : modesetting, amdgpu # To use the amdgpu driver, you need to install the package "xf86-video-amdgpu". driver=modesetting # Enable TearFree option in the Xorg configuration. # Only applies to the amdgpu driver. # Possible values : yes, no # Leave blank for the default (no option specified) tearfree= # DRI version. Possible values : 2, 3 DRI=3 [nvidia] # Whether or not to enable modesetting. Required for PRIME Synchronization (which prevents tearing). modeset=yes # Whether or not to enable the NVreg_UsePageAttributeTable option in the Nvidia driver. # Recommended, can cause poor CPU performance otherwise. PAT=yes # DPI value. This will be set using the Xsetup script passed to your login manager. # It will run the command # xrandr --dpi <DPI> # Leave blank for the default (the above command will not be run). DPI=96 # If you're running an updated version of xorg-server (let's say to get PRIME Render offload enabled), # the nvidia driver may not load because of an ABI version mismatch. Setting this flag to "yes" # will allow the loading of the nvidia driver. ignore_abi=no # Set to yes if you want to use optimus-manager with external Nvidia GPUs (experimental) allow_external_gpus=no # Comma-separated list of Nvidia-specific options to apply. # Available options : # - overclocking : enable CoolBits in the Xorg configuration, which unlocks clocking options # in the Nvidia control panel. Note: does not work in hybrid mode. # - triple_buffer : enable triple buffering. options=overclocking # Enable Runtime D3 (RTD3) Power Management in the Nvidia driver. While in hybrid mode, # this feature allows the Nvidia card to go into a low-power mode if it's not in use. # # IMPORTANT NOTES: # - The feature is still experimental # - It's only supported on laptops with a Turing GPU or above, and an Intel Coffee Lake CPU # or above (not sure about the state of support for AMD CPUs). # - if your Nvidia card also has an audio chip (for HDMI) or a USB port wired to it, they may not # function properly while in low-power mode # # For more details, see # https://download.nvidia.com/XFree86/Linux-x86_64/460.39/README/dynamicpowermanagement.html # # Available options: # - no (the default): RTD3 power management is disabled. # - coarse: the card only goes to low-power if no application is using it. # - fine: the card is also allowed to go to low-power if applications are using it but have not # actively submitted GPU work in some amount of time. dynamic_power_management=no # The Nvidia driver handles power to the video memory separately from the rest of GPU. # When dynamic_power_management=fine, this options controls the threshold of memory utilization # (in Megabytes) under which the memory is put in a low-power state. # Values over 200MB are ignored. Leave blank for the default (200MB). # Setting this value to 0 keeps the memory powered at all times. dynamic_power_management_memory_threshold=
最後,這就是我所擁有的:
neofetch /- me@machine ooo: ---------- yoooo/ OS: ArcoLinux yooooooo Kernel: 5.15.2-arch1-1 yooooooooo Uptime: 4 hours, 18 mins yooooooooooo Packages: 1464 (pacman) .yooooooooooooo Shell: zsh 5.8 .oooooooooooooooo Resolution: 1920x1080 .oooooooarcoooooooo DE: GNOME 40.4 .ooooooooo-oooooooooo WM: Mutter .ooooooooo- oooooooooo WM Theme: Adwaita :ooooooooo. :ooooooooo Theme: Arc-Dark [GTK2/3] :ooooooooo. :ooooooooo Icons: Sardi-Arc [GTK2/3] :oooarcooo .oooarcooo Terminal: alacritty :ooooooooy .ooooooooo CPU: Intel i7-10750H (12) @ 5.000GHz :ooooooooo /ooooooooooooooooooo GPU: Intel CometLake-H GT2 [UHD Graphics] :ooooooooo .-ooooooooooooooooo. GPU: NVIDIA GeForce GTX 1650 Ti Mobile ooooooooo- -ooooooooooooo. Memory: 5465MiB / 15762MiB (34%) ooooooooo- .-oooooooooo. ooooooooo. -ooooooooo
仔細按照 Arch Linux 桌面環境的安裝 Wiki進行操作,並確保在進行切換之前檢查常見問題解答,並且可能最終在 tty 中不知道該怎麼做。迄今為止最好的實用程序可用於處理 Linux 上的圖形卡。
願你的 htop 統計數據低,你的鬍鬚長長!:D