nvidia-smi 没有列出任何进程并且没有内存使用

Vic*_*Yan 5 nvidia nvidia-settings nvidia-prime 19.10

由于我在笔记本电脑(Asus Zephyrus-G-GU502DU-GA502DU)上安装了 Ubuntu,我在使用 nvidia 驱动程序时遇到了问题。由于 nvidia-smi 从未列出进程,因此我一直无法看到 GPU 是否真正被使用。

这是 nvidia-smi 的输出:

nvidia-smi

Thu Oct 24 18:54:39 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 435.21       Driver Version: 435.21       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 166...  Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   47C    P0     3W /  N/A |      0MiB /  5944MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

Run Code Online (Sandbox Code Playgroud)

这是 nvidia-settings 的输出:

nvidia-settings

ERROR: Unable to load info from any available system


(nvidia-settings:8935): GLib-GObject-CRITICAL **: 19:44:58.765: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
** Message: 19:44:58.768: PRIME: No offloading required. Abort
** Message: 19:44:58.768: PRIME: is it supported? no
Run Code Online (Sandbox Code Playgroud)

以及其他一些有用的(可能)信息:

lsmod | grep nouveau

lsmod | grep nvidia

nvidia_uvm            913408  0
nvidia_drm             49152  0
nvidia_modeset       1122304  1 nvidia_drm
nvidia              19517440  8 nvidia_uvm,nvidia_modeset
drm_kms_helper        184320  2 amdgpu,nvidia_drm
drm                   491520  11 gpu*_sched,drm_kms_helper,amdgpu,nvidia_drm,ttm
ipmi_msghandler       102400  2 ipmi_devintf,nvidia
i2c_nvidia_gpu         16384  0
Run Code Online (Sandbox Code Playgroud)
glxgears

Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
622 frames in 5.0 seconds = 124.292 FPS
600 frames in 5.0 seconds = 119.951 FPS
600 frames in 5.0 seconds = 119.955 FPS
Run Code Online (Sandbox Code Playgroud)
dpkg -l | grep -i nvidia

ii  libnvidia-cfg1-435:amd64                   435.21-0ubuntu2                      amd64        NVIDIA binary OpenGL/GLX configuration library
ii  libnvidia-common-435                       435.21-0ubuntu2                      all          Shared files used by the NVIDIA libraries
rc  libnvidia-compute-430:amd64                430.50-0ubuntu0.19.04.1~gpu0         amd64        NVIDIA libcompute package
ii  libnvidia-compute-435:amd64                435.21-0ubuntu2                      amd64        NVIDIA libcompute package
ii  libnvidia-compute-435:i386                 435.21-0ubuntu2                      i386         NVIDIA libcompute package
rc  libnvidia-compute-440:amd64                440.26-0ubuntu0~gpu19.04.2           amd64        NVIDIA libcompute package
ii  libnvidia-decode-435:amd64                 435.21-0ubuntu2                      amd64        NVIDIA Video Decoding runtime libraries
ii  libnvidia-decode-435:i386                  435.21-0ubuntu2                      i386         NVIDIA Video Decoding runtime libraries
ii  libnvidia-encode-435:amd64                 435.21-0ubuntu2                      amd64        NVENC Video Encoding runtime library
ii  libnvidia-encode-435:i386                  435.21-0ubuntu2                      i386         NVENC Video Encoding runtime library
ii  libnvidia-fbc1-435:amd64                   435.21-0ubuntu2                      amd64        NVIDIA OpenGL-based Framebuffer Capture runtime library
ii  libnvidia-fbc1-435:i386                    435.21-0ubuntu2                      i386         NVIDIA OpenGL-based Framebuffer Capture runtime library
ii  libnvidia-gl-435:amd64                     435.21-0ubuntu2                      amd64        NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-gl-435:i386                      435.21-0ubuntu2                      i386         NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-ifr1-435:amd64                   435.21-0ubuntu2                      amd64        NVIDIA OpenGL-based Inband Frame Readback runtime library
ii  libnvidia-ifr1-435:i386                    435.21-0ubuntu2                      i386         NVIDIA OpenGL-based Inband Frame Readback runtime library
ii  nvidia-compute-utils-435                   435.21-0ubuntu2                      amd64        NVIDIA compute utilities
ii  nvidia-dkms-435                            435.21-0ubuntu2                      amd64        NVIDIA DKMS package
ii  nvidia-driver-435                          435.21-0ubuntu2                      amd64        NVIDIA driver metapackage
ii  nvidia-kernel-common-435                   435.21-0ubuntu2                      amd64        Shared files used with the kernel module
ii  nvidia-kernel-source-435                   435.21-0ubuntu2                      amd64        NVIDIA kernel source package
ii  nvidia-prime                               0.8.13                               all          Tools to enable NVIDIA's Prime
ii  nvidia-settings                            440.26-0ubuntu0~gpu19.10.1           amd64        Tool for configuring the NVIDIA graphics driver
ii  nvidia-utils-435                           435.21-0ubuntu2                      amd64        NVIDIA driver support binaries
ii  screen-resolution-extra                    0.18                                 all          Extension for the nvidia-settings control panel
ii  xserver-xorg-video-nvidia-435              435.21-0ubuntu2                      amd64        NVIDIA binary Xorg driver
Run Code Online (Sandbox Code Playgroud)
dmesg -l err

[    0.313637] pci 0000:00:00.2: AMD-Vi: Unable to write to IOMMU perf counter.
[    0.334622] tpm_crb MSFT0101:00: can't request region for resource [mem 0xbcbe8000-0xbcbebfff]
[    2.446321] Error: Driver 'rtl8821ce' is already registered, aborting...
[    4.144178] nvidia-gpu 0000:01:00.3: i2c timeout error e0000040
[    5.144512] ucsi_ccg 2-0008: i2c_transfer failed -110
[    5.144517] ucsi_ccg 2-0008: ucsi_ccg_init failed - -110
Run Code Online (Sandbox Code Playgroud)

一些注意事项:

  • 电池耗尽非常快。它从未持续超过3小时。正常情况下会比这少。
  • 一直都是这样。我已经尝试过 Ubuntu 18.04、19.04 和现在的 19.10。
  • 从休眠状态打开/关闭需要一些时间。

小智 0

我感觉到你了,伙计。我有同样的笔记本电脑和同样的问题,需要一段时间才能找到针对 AMD/NVIDIA 组合的开箱即用解决方案。不要失去希望。:-)

与此同时,对我有帮助的是从这里安装最新的 AMD 驱动程序:https ://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers

sudo add-apt-repository ppa:oibaf/graphics-drivers
sudo apt update && sudo apt upgrade
Run Code Online (Sandbox Code Playgroud)

重新启动后,您将看到仅使用 AMD Radeon Vega 10 显卡,这将有助于减少电池消耗。然而,Ubuntu 19.10 感觉有点慢,这就是我现在切换到 Ubuntu MATE 的原因。一旦 Ubuntu(或 Manjaro)提供了正确的驱动程序,我将在这里切换并更新您。

希望这对您有一点帮助。