如何检查 Ubuntu 是否正在使用我的 NVIDIA 显卡?

Nic*_*Nic 103 nvidia drivers video-driver

我问的原因是我通过软件中心安装的需要 3D 加速的游戏都不会运行,例如 TORCS。当我尝试运行时,没有任何反应。我有一台配备 nVidia GeForce GT 525M 的戴尔 Inspiron N5110。

我尝试了以下方法,对有类似问题的人提出了一些建议:

lspci -v
Run Code Online (Sandbox Code Playgroud)

这给了我:

01:00.0 VGA compatible controller: nVidia Corporation Device 0df5 (rev a1) (prog-if 00 [VGA controller])
    Subsystem: Dell Device 04ca
    Flags: bus master, fast devsel, latency 0, IRQ 16
    Memory at f5000000 (32-bit, non-prefetchable) [size=16M]
    Memory at e0000000 (64-bit, prefetchable) [size=256M]
    Memory at f0000000 (64-bit, prefetchable) [size=32M]
    I/O ports at e000 [size=128]
    Expansion ROM at f6000000 [disabled] [size=512K]
    Capabilities: <access denied>
    Kernel driver in use: nvidia
    Kernel modules: nvidia_current, nvidia_current_updates, nvidia, nouveau, nvidiafb
Run Code Online (Sandbox Code Playgroud)

我也试过:

egrep -i " connected|card detect|primary dev" /var/log/Xorg.0.log
Run Code Online (Sandbox Code Playgroud)

这给了我:

[    20.873] (II) intel(0): Output LVDS1 connected
Run Code Online (Sandbox Code Playgroud)

和:

nvidia-smi -a
Run Code Online (Sandbox Code Playgroud)

这给了:

NVIDIA: could not open the device file /dev/nvidiactl (No such file or directory).
Nvidia-smi has failed because it couldn't communicate with NVIDIA driver. Make sure that latest NVIDIA driver is installed and running.
Run Code Online (Sandbox Code Playgroud)

我真的不明白这一切意味着什么。

Geo*_*Geo 60

我知道这个问题很老,但我找到了一个我在其他任何主题上都没有找到的解决方案。

打开终端并输入

lspci -vnnn | perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA
Run Code Online (Sandbox Code Playgroud)

你的输出将是这样的:

00:02.0 VGA compatible controller [0300]: Intel Corporation 3rd Gen Core processor Graphics Controller [8086:0166] (rev 09) (prog-if 00 [VGA controller]) 

01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Chelsea LP [Radeon HD 7730M] [1002:682f] (rev ff) (prog-if ff)
Run Code Online (Sandbox Code Playgroud)

现在查找[VGA controller]每个设备末尾的 。无论哪个设备拥有它,都是活动的 GPU。就我而言,处理工作的是 i7 处理器 (HD 4000)。

  • lspci -v | 在这种情况下,grep“VGA 控制器”应该可以解决问题......获得相同结果的过度方法...... (12认同)
  • 不是真的... lspci -vnnn | perl -lne '打印 if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA 00:02.0 VGA 兼容控制器 [0300]:英特尔公司第三代核心处理器图形控制器 [8086:0166](rev 09)(prog-if 00 [VGA 控制器])01:00.0 VGA 兼容控制器 [0300]:NVIDIA Corporation GK107M [GeForce GT 650M] [10de:0fd1] (rev a1) (prog-if 00 [VGA 控制器]) (8认同)
  • 这个答案是错误的我有 [VGA 控制器] 用于我没有使用的图形卡 (4认同)
  • 这是不正确的。我安装的两个显卡(Intel 和 AMD)都有 [VGA 控制器]。 (2认同)
  • 根本不需要 perl 命令。只需输入“lspci -vnn |” grep VGA` (2认同)

小智 47

我发现了这个(如果你有 NVidia 和 intel 显卡):

我认为以下命令应该可以指示您的活动芯片:

$ glxinfo|egrep "OpenGL vendor|OpenGL renderer*"

OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile*
Run Code Online (Sandbox Code Playgroud)

如果您切换到 NVidia 卡:

$ optirun glxinfo|egrep "OpenGL vendor|OpenGL renderer"

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 555M/PCIe/SSE2
Run Code Online (Sandbox Code Playgroud)


Cir*_*郝海东 36

nvidia-settings 公用事业

在 Ubuntu 15.10 上,安装后nvidia-352GPU 似乎可以工作(参见例如这些步骤):

nvidia-settings
Run Code Online (Sandbox Code Playgroud)

显示类似:

在此处输入图片说明

请注意它是如何显示的:

GPU 0 - (NVS 5400M)
Run Code Online (Sandbox Code Playgroud)

NVS 5400M我的 GPU 模型在哪里。也在一个Quadro K1100M. 在我安装驱动程序之前,这并没有出现。

另外,如果我开火:

sudo apt-get install mesa-utils
__GL_SYNC_TO_VBLANK=0 vblank_mode=0 glxgears
Run Code Online (Sandbox Code Playgroud)

GPU 使用率超过 90%,进一步表明它正在工作。

这些环境变量用于禁用 vsync:https ://stackoverflow.com/questions/17196117/disable-vertical-sync-for-glxgears

但最后,唯一重要的测试是使用/不使用 GPU 进行基准测试,看看您的 FPS 是否上升:如何执行详细而快速的 3D 性能测试

nvidia-settings顺便说一下是开源的:https : //github.com/NVIDIA/nvidia-settings

Launchpad 上类似:https : //answers.launchpad.net/ubuntu/+question/233462


Mad*_*ath 31

最简单的检查方法是转到设置 -> 详细信息 -> 关于

设置


小智 11

试试这个我认为它会起作用:

nvidia-smi
Run Code Online (Sandbox Code Playgroud)

它会给你这样的东西

在此处输入图片说明


sin*_*ium 7

我认为最简单的方法之一是prime-select query在终端中运行此命令。
输出将是您的 PC 使用的图形卡。
下面是一个例子:
在此处输入图片说明 如果要在您拥有的显卡之间切换,请使用 sudo prime-select <graphic card name>