Hello,
I have a Thinkpad w520 optimus notebook (intel hd3000 + nvda quadro 2000m) and also RTX3050 6GB egpu connected via expresscard/34 slot and an external monitor connected to the RTX card with 1.4 displayport cable. In bios “Graphics device” is set to optimus (so neither device is disabled) and “OS detection for nvidia optimus” is enabled.
On Windows [7] everything is working fine with external display, that means both the RTX3050, the dp cable and external monitor is working fine. i have problems with ubuntu 24 though. nvidia-smi returns with no devices detected even though is installed. On windows i simply disabled the quadro within devmgmt but i don’t know how to make this work on ubuntu, maybe the quadro card must be disabled here too.
lshw -C display output
xrandr output
xorg.conf
Any help is greatly appreciated. Thanks.
M
Hello @ma.prezentalok and welcome to the NVIDIA developer forums.
It’s been a while since I connected an eGPU (with a Razer Core X) to any Ubuntu. But if I remember correctly it would show up here:
/usr/bin/lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 003: ID 0bdb:1911 Ericsson Business Mobile Networks BV F5521gw
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 003: ID 1532:0084 Razer USA, Ltd RZ01-0321 Gaming Mouse [DeathAdder V2]
Bus 002 Device 004: ID 0a5c:217f Broadcom Corp. BCM2045B (BDC-2.1)
Bus 002 Device 005: ID 04f2:b217 Chicony Electronics Co., Ltd Lenovo Integrated Camera (0.3MP)
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 3434:0281 Keychron Keychron K8 Pro
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
But I do not see any fitting device. Maybe you should first verify that Ubuntu even detects the external GPU case?
1 Like
Hi Markus, thanks for answering.
Well Ubuntu detects RTX3050 as a PCI device (lspci) on pci bus 5, the quadro is detected on pci bus 1, also see lshw -C display output. It is not USB3 but EC34 connection.
The 550 driver ignores the quadro, pci 01 in the logs, but fails to register the rtx 3050 device…
nvidia-nvlink: Nvlink Core is being initialized, major device number 509
The NVIDIA Quadro 2000M GPU installed in this system is
supported through the NVIDIA 390.xx Legacy drivers. Please
visit Unix Drivers | NVIDIA for more
information. The 550.120 NVIDIA driver will ignore
this GPU. Continuing probe…
ignoring the legacy GPU 0000:01:00.0
loading NVIDIA UNIX x86_64 Kernel Module 550.120 Fri Sep 13 10:10:01 UTC 2024
nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 550.120 Fri Sep 13 10:01:25 UTC 2024
[drm] [nvidia-drm] [GPU ID 0x00000500] Loading driver
GPU 0000:05:00.0: RmInitAdapter failed! (0x26:0x56:1610)
GPU 0000:05:00.0: rm_init_adapter failed, device minor number 0
[drm:nv_drm_load [nvidia_drm]] ERROR [nvidia-drm] [GPU ID 0x00000500] Failed to allocate NvKmsKapiDevice
[drm:nv_drm_register_drm_device [nvidia_drm]] ERROR [nvidia-drm] [GPU ID 0x00000500] Failed to register device
nvidia-uvm: Loaded the UVM driver, major device number 507.
GPU 0000:05:00.0: RmInitAdapter failed! (0x26:0x56:1610)
GPU 0000:05:00.0: rm_init_adapter failed, device minor number 0
GPU 0000:05:00.0: RmInitAdapter failed! (0x26:0x56:1610)
GPU 0000:05:00.0: rm_init_adapter failed, device minor number 0
Alright I was able to make it work on ThinkPad W520.
sudo purge_nvidia.sh
sudo ./NVIDIA-Linux-x86_64-550.144.03.run -m=kernel-open
sudo update-initramfs -u
sudo reboot
Because of enabled bios optimus settings there were artifacts on the external display, but the following solved it completely.
sudo apt install nvidia-settings
sudo apt install nvidia-prime
sudo prime-select nvidia
1 Like
Great to hear a success story with this!
Thanks!