Isaac Sim issue with IOMMU on bare metal despite having turned it off

Hi,

I installed Isaac Sim on my linux bare-metal computer, and I’m getting the following warning despite disabling IOMMU on my motherboard:
"
On bare-metal Linux systems, CUDA and the display driver do not support IOMMU-enabled PCIe peer to peer memory copy.
If you are on a bare-metal Linux system, please disable the IOMMU. Otherwise you risk image corruption and program instability.
"

I made sure to disable IOMMU in on my Aorus AMD motherboard as shown in the picture below;

Isaac sim is definitely not running normally, since it can’t even load the hello_world Isaac example, isaac sim gets stuck.

I’m running Ubuntu 22.04.

Thanks!

Hi. You can leave SVM Mode enabled.
The IOMMU setting should be on a different page. Look for something similar below.
Advanced\AMD CBS\NBIO Common Options\IOMMU

After a reboot, you can verify that IOMMU is disabled if the two commands below do no print any outputs.

sudo dmesg | grep -e DMAR -e IOMMU

ls /sys/kernel/iommu_groups/

2 Likes

Hi Sheikh,

I found the setting and set IOMMU to “Disabled”, and clicked save&exit, but IOMMU is still enabled. When I go back into the BIOS it still says IOMMU is set to auto.

Also the following commands show it’s still there:

(base) febert@emancro1:~$ ls /sys/kernel/iommu_groups/
0 10 12 14 16 18 2 21 23 25 27 29 30 5 7 9
1 11 13 15 17 19 20 22 24 26 28 3 4 6 8
(base) febert@emancro1:~$ sudo dmesg | grep -e DMAR -e IOMMU
[sudo] password for febert:
[ 0.543526] pci 0000:00:00.2: AMD-Vi: IOMMU performance counters supported
[ 0.548389] pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40
[ 0.553848] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4 counters/bank).
(base) febert@emancro1:~$

Hi. You might need help from the motherboard manufacturer to disable IOMMU for your specific hardware.

Another thing to try is to disable SVM mode like before.
Also try disable IOMMU in grub with similar commands below:

sudo bash -c 'echo GRUB_CMDLINE_LINUX="amd_iommu=off" >> /etc/default/grub'
sudo update-grub
sudo reboot
1 Like

Thanks! This has helped me on Ubuntu 24.04.

An alternative, but very similar approach is to just locate the already existing
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
in the /etc/default/grub file and append the off-switch text depending on the system you’re on:

AMD
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_iommu=off"

Intel
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_iommu=off"

Then proceed with updating grub and rebooting as suggested before.

Another thing:

While ls is empty afterwards, in my case the dmesg output is not. Although it indicates that IOMMU was indeed disabled:

$ sudo dmesg | grep -e DMAR -e IOMMU
[    0.009756] ACPI: DMAR 0x00000000315D7000 000088 (v02 INTEL  EDK2     00000002      01000013)
[    0.009784] ACPI: Reserving DMAR table memory at [mem 0x315d7000-0x315d7087]
[    0.047152] DMAR: IOMMU disabled
[    0.106385] DMAR: Host address width 39
[    0.106386] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[    0.106393] DMAR: dmar0: reg_base_addr fed90000 ver 4:0 cap 1c0000c40660462 ecap 29a00f0505e
[    0.106394] DMAR: DRHD base: 0x000000fed91000 flags: 0x1
[    0.106398] DMAR: dmar1: reg_base_addr fed91000 ver 5:0 cap d2008c40660462 ecap f050da
[    0.106399] DMAR: RMRR base: 0x0000003c000000 end: 0x000000403fffff
[    0.106401] DMAR-IR: IOAPIC id 2 under DRHD base  0xfed91000 IOMMU 1
[    0.106401] DMAR-IR: HPET id 0 under DRHD base 0xfed91000
[    0.106402] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[    0.107964] DMAR-IR: Enabled IRQ remapping in x2apic mode
[    0.407750] pci 0000:00:02.0: DMAR: Skip IOMMU disabling for graphics

Isaac Sim didn’t complain about any active IOMMU either.