How to run OMNIVERSE ISAAC SIM on hybrid graphics (multiple GPUs)

I have a ThinkPad P15 Gen1 with NVIDIA RTX A4000 graphics card , listed as one of the STUDIO mobile workstations, running Ubuntu 20.04. Unfortunately, when I use the required NVIDIA graphics driver 470 and I set the Graphics Device to Discrete , I get a black screen after the splash screen . NVIDIA graphics driver 460 works, but that doesn’t work for running OMNIVERSE it seems. Also running with hybrid graphics seems to create some problems with OMNIVERSE. How can I run OMNIVERSE ISAAC SIM on platforms with multiple GPUs?

Hi, try the latest 470.94 drivers or 495.46. Maybe the issue could be fixed with newer drivers.
See Unix Drivers | NVIDIA

Another thing to try is to disable the iGPU in your BIOS if it is possible.

The information on this page could help too:
https://docs.omniverse.nvidia.com/prod_launcher/prod_kit/linux-troubleshooting.html

@Sheikh_Dawood - thanks a lot for you quick responds and good suggestion.

I could get it to work with the NVIDIA 470 graphics driver by connecting a HDMI monitor and setting the BOOT DISPLAY DEVICE in the BIOS to HDMI . So I guess it is not the NVIDIA graphics driver. But it still does not work using just the laptop by itself.

Killing the desktop, removing the HDMI monitor and then starting the desktop again - works with just the laptop.

$: sudo init 3
$: sudo systemctl start graphical.target

Not loading the NVIDIA graphics driver until X is loaded didn’t help.

$: sudo cp /etc/default/grub /etc/default/grub.old
$: sudo nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash” to “nomodeset”
$: sudo update-grub

Blacklisting the Nouveau graphics driver didn’t help.

$: sudo apt-get update
$: sudo apt-get upgrade
$: sudo apt-get install dkms build-essential linux-headers-$(uname -r)
$: sudo nano /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
$: sudo nano /etc/modprobe.d/nouveau-kms.conf
options nouveau modeset=0
$: sudo update-initramfs -u

Looks like there should be a configuration that allows to start the desktop properly.

Try this method to blacklist nouveau:

$ sudo bash -c "echo blacklist nouveau > /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
$ sudo bash -c "echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
$ cat /etc/modprobe.d/blacklist-nvidia-nouveau.conf
blacklist nouveau
options nouveau modeset=0
$ sudo update-initramfs -u
$ sudo reboot

After a reboot, do a purge of other NVIDIA drivers and reinstall it.
Follow Q1 in this page: Linux Troubleshooting — Omniverse Launcher documentation
Install the latest 470 or 495 .run drivers

After another reboot, run nvidia-smi.
You should only see the RTX 4000 GPU and can start an Omniverse app with it. If you still see another iGPU, you can run with this flag to select only the RTX 4000:
--/renderer/activeGpu=<device ID for RTX 4000 in nvidia-smi>

This works on my Razer Blade laptop but I am not sure about a Thinkpad. You may need to google solutions on the Internet to get Ubuntu 20.04 working on it or search the Lenovo forums.

Sometimes, reinstalling Ubuntu on the machine may help too

Thanks a lot Sheikh for all your help with this!

I have been trying different things now and also had lost the ability to run the NVIDIA driver in Hybrid mode.

Setting GRUB_CMDLINE_LINUX_DEFAULT ="quiet splash acpi=off " in /etc/default/grub made it work again , which might suggest that it is a power issue with the 4k OLED display . Note that connecting a HDMI display always works.

Then I downgraded and upgraded the BIOS and now at least I got the NVIDIA 470 driver work in Hybrid mode - without acpi=off. So maybe there were some corrupted settings in the BIOS?

I think I am going to work in hybrid mode using NVIDIA prime .

1 Like

@Sheikh_Dawood I think now I have setup my computer properly to work with the NVIDIA 470 driver in Hybrid mode using NVIDIA prime.

$ lshw -c video

$ nvidia-smi

$ prime-select query
nvidia

Now I am trying to work through some issues running Isaac-Sim. It actually mostly works, but I get a few messages that suggest something is not running 100%.

  1. The New Launch update (1.5.2) message stays over several reboots and the launcher is not updated.

  2. In the terminal when I run Isaac-Sim, it seems to use both graphics cards and therefore might use the lower VRAM for texture streaming. As suggested in the troubleshooting I get the same when I use --/renderer/activeGpu=0 as Extra Args.

  3. In the terminal when I run Isaac-Sim it seems that I have a version problem with Vulkan.

As suggested in the trouble shooting I use the Vulkan SDK and get:


with 3 GPUs



As suggested under troubleshooting when I tried to clean up icds it turns out that there are no files under /etc/vulkan/icd.d

Any suggestions would be greatly appreciated.

  1. Try clicking the “user” icon then click “exit”. Next, run the Omniverse Launcher again. You should see the version 1.5.2 ins the about menu (in the “user” icon section.
  2. This looks fine. Looks like it auto selects the correct GPU.
  3. I think you can ignore that error. I see the "Isaac Sim App Loaded: in the log. That is a good sign.

Does Isaac Sim appear to be working now?

ad 1) nope - doesn’t work

Yes, I went through the Isaac Examples and they seem to work fine.
Thanks a lot for your help!

1 Like

It may take a while or a few restarts to get the new version. Please look out for when the bell icon is no longer green.
Thanks!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.