Disabling VT-d improves Intel Arc GPU Linux performance on Meteor Lake and newer SoCs

In this post, I’ll check whether disabling VT-d virtualization support may improve the performance of the Intel Arc GPU in recent Meteor Lake or Lunar Lake SoC using a Khadas Mind Maker Kit with an Intel Core Ultra 7 258V CPU with Intel Arc 140V graphics running Ubuntu 24.10.

A few days ago, I read a post on Phoronix about Intel publishing tips to improve the performance of Intel GPUs in Linux:

  • Keep the system updated with the latest kernel and Mesa versions.
  • Ensure SoC firmware is up-to-date. These firmware updates currently require installing the Windows graphics driver; firmware updates via fwupd are in progress.
  • Use Wayland where possible, as it supports additional modifiers for better performance.
  • For MTL (Meteor Lake) and newer integrated GPUs, disable VT-d if virtualization is not needed.
  • For discrete GPUs:
    • Enable ReBAR_
    • Enable ASPM_

I was especially curious about the line about disabling VT-d virtualization on Meteor Lake of newer processors. So I decided to check this tip with the Khadas Mind Maker Kit, aka Khadas Mind 2 AI Maker Kit with a Lunar Lake SoC. I could install Ubuntu 24.10 albeit without WiFi, because only Bluetooth is recognized from the AX211 module… I’ll check later, and I ended up using a 2.5GbE USB-C adapter instead to update the OS before testing.

Ubuntu 24.04 Linux Intel Core Ultra 7 258V WaylandI could confirm that Wayland was enabled as is now usually the case in Ubuntu.

We can check whether VT-D / IOMMU virtualization is enabled by looking for DMAR in the kernel log:


It’s there and the last line even shows Intel VT-d (Intel Virtualization Technology for Directed I/O). I’ll run some Unigine benchmarks and glmark2-wayland. I initially ran sbc-bench.sh to optimize the system for performance and check throttling just in case:


This command does not run any benchmarks and only monitors CPU frequency, memory, and temperature. As such it requires very little CPU usage (confirmed with htop), and in theory, it should not impact the results, but somehow it hammered the benchmark score. Here’s Unigine Heaven Benchmark 4.0 with sbc-bench.sh:

Intel Arc Unigine Heaven Benchmark VT-d enabled + sbc-bench.sh

If I stop sbc-bench.sh and run the benchmark again:

Intel Arc GPU Unigine Heaven Benchmark 4.0 VT-d enabled

It also impacts the Superposition benchmark. I can’t figure out why, but I stopped using it for the rest of the review. Here are the results of the Unigine Superposition v1.1 GPU benchmark with Intel VT-d enabled.

Intel Arc GPU Unigine Superposition Benchmark VT-d enabled

Finally, I ran glmark2-wayland in off-screen mode:


Now that we have benchmark results with VT-d enabled, I rebooted the computer to enter the BIOS and find settings to disable VT-d.

Disable Intel VMX Virtualization Technology VT-d

I initially went to Advanced->CPU Configuration, and from there set Intel (VMX)Virtualization Technology to Disabled. But it didn’t help because this is for VT-x, and I wanted to disable VT-d…

Aptio Setup AMI BIOS VT-d Configuration

I eventually found VT-d Configuration in Advanced->System Agent (SA) Configuration->VT-d setup menu. But it was not super useful either, since VT-d Enabled can’t be changed to Disabled in the BIOS.

Since we are using Linux, I disabled VT-d with the following line in /etc/default/grub:


Before running the command to update grub:


After a reboot, we can see IOMMU is disabled, and VT-d does not show up anymore in the kernel log:


Let’s repeat the benchmarks to test the Intel Arc GPU without VT-d.

Intel Arc 140V GPU Unigine Heaven 4.0 VT-d disabled Linux 6.11

The FPS got to 46.4 without VT-d against 42.0 with. That’s a small improvement of 4.4 FPS or a little over 10 percent.

Intel Arc 140V GPU Superposition VT-d disabled Linux 6.11We did not see any improvement in the Superposition benchmark with a slightly lower score of 3210 points vs 3286 points, or a drop of 2.4 percent.


The glmark2-wayland score was slightly higher (1,794 vs 1,718) with VT-d disabled or a 4.4% improvement. So there appears to be some small benefit when disabling VT-d on Intel Lunar Lake SoCs.

Another difference was the Unigine Heaven score in Windows 11 with DirectX was much higher (81.2 FPS / 2,045 points) than in Linux with OpenGL. Linux scores are always a little lower in this benchmark, but here the gap is quite large. Also, when I tested the GEEKOM GT1 Mini PC with an Intel Core Ultra 9 185H “Meteor Lake” SoC (Intel Arc graphics @ 2.35 GHz with 8 Xe cores) in Ubuntu 24.10, it scored much higher too (77.6 FPS / 1,956 points). The Intel Arc Graphics 140V found in the Core Ultra 7 258V SoC also features 8 Xe cores but only clocked up to 1.95 GHz, meaning the score should be somewhat lower, but not that much. Lunar Lake processors are very new, so I decided to upgrade the Linux kernel to Linux 6.13-rc1 provided by Canonical to see if I could see any improvements:


I also had to disable Secure Boot in the BIOS to boot the system with an unsigned kernel or it would not boot with the error “bad shim signature”.

Intel Arc 140V Unigine Heaven Benchmark VT-d disabled Linux 6.13

It gets better at 48 FPS in Unigine Heaven Benchmark 4.0 although the gap is still large. Upgrading to Linux 6.13 and disabling VT-d allowed us to gain 6.2 FPS or almost a respectable 15 percent improvement in frame rate.

Intel Arc 140V Unigine Superposition Benchmark VT-d disabled Linux 6.13The Superposition benchmark remains unimpacted…


glmark2-wayland score further improved to 1901 points, or a 10.7 percent improvement compared to having Linux 6.11 and VT-d enabled.

So what we learned here is that disabling VT-d may indeed lead to improved GPU performance in Linux, but it depends on the workload. Upgrading the Linux kernel also proved to have some benefits since the Intel Core Ultra 7 258V Lunar Lake is quite new, and some software optimizations are still possible. The Khadas Mind Maker Kit’s BIOS does not allow us to disable VT-d, so I haven’t tested this in Windows, but some Redditors found out that disabling VT-d did improve the performance/frame rate of some Windows games, while others did not see any benefit.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

Radxa Orion O6 Armv9 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
2 Comments
oldest
newest
numbqq
numbqq
8 hours ago

You can use the backport iwlwifi drivers and update Wi-Fi firmware to fix the Wi-Fi.

https://docs.khadas.com/products/maker-kit/mind-2-ai-maker-kit/troubleshooting/fix-ubuntu#fix-wi-fi-issue

Willy
Willy
6 hours ago

I don’t know well what features are covered by VT-d, but at least here by disabling IOMMU you disabled quite more (it’s very likely that VT-d relies on IOMMU and goes away without it). IOMMU is like an MMU but between the CPU and external devices. It can be seen as a remapping and/or a firewall between bus-master devices and the RAM. It’s well known that disabling it significantly improves network performance for example. On some machines you can even see a 5x performance ratio between with and without it, because the delays it adds to very small and frequent… Read more »

Boardcon EM3562 Rockchip RK3562 SBC with 8 analog camera inputs