Graphics
Intel® graphics drivers and software, compatibility, troubleshooting, performance, and optimization
21372 Discussions

Passthrough Intel® UHD Graphics to a Hyper-V Using DDA?

Samadhan
New Contributor I
5,054 Views

I have an Intel N100 CPU with an integrated GPU (Intel® UHD Graphics) running the latest Windows 11 Pro. I created a VM with Hyper-V and want to pass through the Intel GPU to this VM using Discrete Device Assignment (DDA). This would enable the VM to utilize the GPU for enhanced graphical performance.

 

Based on the system requirements for Hyper-V on Windows Pro, in order to perform DDA, the processor must have Intel's Extended Page Table (EPT).

My Intel N100 CPU supports EPT:

Ref: Intel Processor N100 Specifications

Samadhan_0-1716579486583.png

 

I am trying to do this by following the DDA steps but it failed on this error :

Steps I followed:

1. Shut down the VM.
2. Open Device Manager, expand Display adapters, and select the GPU
3. Collect PCIROOT value from "Location paths"
4. Disable the GPU in Device Manager.
5. Configure the VM for DDA via PowerShell as follows:

 

Set-VM -Name VMName -AutomaticStopAction TurnOff
Set-VM -VMName VMName -GuestControlledCacheTypes $true
Set-VM -VMName VMName -LowMemoryMappedIoSpace 128Mb
Set-VM -VMName VMName -HighMemoryMappedIoSpace 18000Mb

 

6. Attempt to dismount the device with:

 

Dismount-VMHostAssignableDevice -force -LocationPath "PCIROOT value"

 

Error Encountered:

 

Dismount-VMHostAssignableDevice: The operation failed. The device cannot be assigned to a virtual machine as the firmware (BIOS or UEFI) on this host computer system indicates that the device must remain in contact with the firmware running in the host. The device can only be used in the management operating system. You should contact your OEM to determine if a firmware upgrade is available, or if the PCI Express device can be reconfigured to be independent of the host firmware.

Samadhan_2-1716580800278.png

 

0 Kudos
14 Replies
h4ck3r
Novice
4,996 Views
Have you checked if your configuration is capable of dda with SurveyDDA.ps1?
Bios can sometimes not support it.
Be aware that this will remove igpu from beeing seen in windows ENTIRELY (even device manager won't show it)

Another problem is licensing - i managed to pass my intel igpu, but windows won't let me start vm cause of server licensing for that.
0 Kudos
h4ck3r
Novice
4,996 Views
You might be more interested in modded virtualbox - there is active project which enables sr-iov (like) gpu passthrough. Sadly its only available in ubuntu for now.
0 Kudos
Samadhan
New Contributor I
4,774 Views

Hi @h4ck3r 

Thank you for your response.

 

Here is the systeminfo result for Hyper-V Requirement.

Samadhan_1-1716993400509.png

Here is the `SurveyDDA.ps1` result.

 

PS C:\WINDOWS> .\SurveyDDA.ps1
Executing SurveyDDA.ps1, revision 1
Generating a list of PCI Express endpoint devices


Intel(R) USB 3.10 eXtensible Host Controller - 1.20 (Microsoft)
Old-style PCI device, switch port, etc.  Not assignable.


Intel SD Host Controller
Old-style PCI device, switch port, etc.  Not assignable.


 PCI Express Root Port #9 - 54B0
Old-style PCI device, switch port, etc.  Not assignable.


High Definition Audio Controller
Old-style PCI device, switch port, etc.  Not assignable.


Intel(R) Platform Monitoring Technology Driver
BIOS kept control of PCI Express for this device.  Not assignable.


 Shared SRAM - 54EF
Old-style PCI device, switch port, etc.  Not assignable.


 SPI (flash) Controller - 54A4
Old-style PCI device, switch port, etc.  Not assignable.


Intel(R) USB 3.20 eXtensible Host Controller - 1.20 (Microsoft)
Old-style PCI device, switch port, etc.  Not assignable.


 PCI Express Root Port #7 - 54BE
Old-style PCI device, switch port, etc.  Not assignable.


Intel(R) Management Engine Interface #1
Old-style PCI device, switch port, etc.  Not assignable.


 PCI Express Root Port #11 - 54B2
Old-style PCI device, switch port, etc.  Not assignable.


Intel(R) Serial IO I2C Host Controller - 54E8
Old-style PCI device, switch port, etc.  Not assignable.


Standard NVM Express Controller
BIOS kept control of PCI Express for this device.  Not assignable.


Intel(R) Ethernet Controller (3) I225-V
BIOS kept control of PCI Express for this device.  Not assignable.

 SMBus - 54A3
Old-style PCI device, switch port, etc.  Not assignable.

LPC/eSPI - 5481
Old-style PCI device, switch port, etc.  Not assignable.

Intel(R) Serial IO I2C Host Controller - 54EB
Old-style PCI device, switch port, etc.  Not assignable.

Intel(R) Wi-Fi 6 AX200 160MHz
BIOS kept control of PCI Express for this device.  Not assignable.

Intel(R) Host Bridge/DRAM Registers - 461C
BIOS requires that this device remain attached to BIOS-owned memory.  Not assignable.

Standard SATA AHCI Controller
Old-style PCI device, switch port, etc.  Not assignable.

Intel(R) UHD Graphics
BIOS requires that this device remain attached to BIOS-owned memory.  Not assignable.

 

 

 

As you mentioned, I understand that removing the iGPU from being seen in Windows entirely (even from Device Manager) 

This is acceptable for me as I intend to use the iGPU exclusively within a Hyper-V VM ( Linux Debian12 )

You also mentioned another issue might be regarding licensing, and you managed to pass through the Intel iGPU.

Could you please provide more details on how you achieved the iGPU pass-through? Specifically, I would like to know:

- What CPU hardware and operating system/server configuration you used.
- Any specific steps or settings you applied to overcome the licensing issues.
- If there are any known limitations or issues with using Windows 11 Pro for iGPU pass-through.

 

I am using a licensed version of Windows 11 Pro on a machine with an Intel N100 CPU.

You can check the machine details here.

From the `SurveyDDA.ps1` result, it shows the following for Intel(R) UHD Graphics:

Samadhan_0-1716991886875.png

0 Kudos
h4ck3r
Novice
4,757 Views

"BIOS requires that this device remain attached to BIOS-owned memory. Not assignable."

This means that either you don't have vt-d enabled or your bios doesn't support it properly.

As for licensing - i never managed to fix it on consumer windows install.

If you're gonna make server cluster out of more than one n100 pc i think your best bet would be either proxmox or xcp-ng.
I had exact issue where i couldn't get dda to work no matter what.
Then in proxmox it just worked with vfio.
That way you would loose host gpu output, but proxmox is managed from web gui anyway.

For me xcp-ng is too less advanced when it comes to tweaking, but it has advantage when working with multiple machines - it doesn't need to run web gui on each machine like proxmox does.

0 Kudos
ACarmona_Intel
Moderator
4,880 Views

Hello Samadhan, 

 

Thank you for posting in our communities.


To further investigate the issue and provide you with a proper recommendation, may we know the complete model of your system?

 

We look forward to your response!


Best regards,

Carmona A.

Intel Customer Support Technician


0 Kudos
Samadhan
New Contributor I
4,869 Views

Hi @ACarmona_Intel 

Thanks for your reply.

Actually, we have multiple systems with N100, one of which I have mentioned below: 

 

Please note that in System 1, there are two display adapters:

1. Intel® UHD Graphics 

2. Microsoft Basic Display Adapter

 

I also tried the DDA passthrough, but there is a different error message.

I have added the complete details as as new Reply, Please check the attached screenshot:


System Information: 

 

System Manufacturer: Shenzhen Simo Innovation Technology Co., Ltd. SI-B160
System Model:  SI-B160
System Type : x64-based PC
System SKU : 103109
Processor : 103109 Intel(R) N100, 800 Mhz, 4 Core(s), 4 Logical Processor(s)



OS Information
OS Name : Microsoft Windows 11 Pro 
Version : 10.0.22621 Build 22621
OS Manufacturer : Microsoft Corporation
Manufacturer: ZOTAC
Product Name: ZBOX-MI351
Version: XX
Serial Number: GXXXX472XXXXX
UUID: 21920d80-bab9-11ee-8aff-2faf5ca10700
Wake-up Type: Power Switch
SKU Number: NA
Family: NA

 

Screenshot : 

Samadhan_1-1716890256863.png

Display : 

Samadhan_2-1716890534233.png

 

Here is the Windows System Details: 

Samadhan_0-1716889175135.png

System 2 Information

 

Manufacturer: ZOTAC
Product Name: ZBOX-MI351
Serial Number: GXXXX472XXXXX
UUID: 21920d80-bab9-11ee-8aff-2faf5ca10700
SKU Number: NA
Family: NA

OS Information
OS Name : Microsoft Windows 11 Pro

 

 

0 Kudos
Samadhan
New Contributor I
4,868 Views

Edied:

Actually, we have multiple systems with N100, one of which I have mentioned below: 

Please note that in System 1, there are two display adapters:

1. Intel® UHD Graphics 

2. Microsoft Basic Display Adapter

I also tried the DDA passthrough, but there is a different error message.

 

Dismount-VMHostAssignableDevice : The operation failed. 
The current configuration does not allow for OS control of the PCI Express bus. Please check your BIOS or UEFI settings. 
At line:1 char:1 
+ Dismount-VMHostAssignableDevice -force -LocationPath "PCIROOT(0)#PCI( ... 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo          : InvalidArgument: (:) [Dismount-VMHostAssignableDevice], VirtualizationException 
    + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.DismountVMHostAssignableDevice  

 

 

Please check attached screenshots: 

Samadhan_2-1716892947457.png

 

 

Samadhan_3-1716893141117.png

 

Samadhan_4-1716893184786.png

 

0 Kudos
h4ck3r
Novice
4,825 Views
Zotac zbox might not support this properly. Make sure you have vt-d enabled as well as other vitrualization options.
Could you also make picture of everything related to vm in bios/uefi?
ACarmona_Intel
Moderator
4,808 Views

Hello Samadhan, 


Thank you so much for the prompt response and for the information that you have shared with us.


Since this is an OEM (original equipment manufacturer device), please take into consideration that our support may be limited since we are not familiar with the technology, settings, customizations, custom drivers, and features that the OEM has designed and installed in your system. Nevertheless, we will do our best to assist you with your concern.


By the way, we will now do further investigation on the issue and post the response on this thread once it is available.


Thank you for your patience and understanding.


Best regards,

Carmona A.

Intel Customer Support Technician


0 Kudos
h4ck3r
Novice
4,756 Views
@Samadhan

If you really want to stick with windows and only use debian based vm i would highly suggest trying wsl2.
Its kind of linux container on windows, but obviously less configurable. That said it should version 2 should provide gpu acceleration on most cards.

You can test it with glxgears from mesa-toolbox or just by installing some games like supertuxkart.
0 Kudos
ACarmona_Intel
Moderator
4,710 Views

Hello Samadhan, 


Thank you so much for patiently waiting for our response.


Please try the following troubleshooting steps for a possible solution to the issue:


1.) Enable the following settings on the Basic Input/Output System (BIOS):


  • Access Control Services (ACS)
  • Intel® Virtualization Technology for Directed I/O (VT-D)
  • Memory-mapped input/output (I/O) above 4GB
  • Single-Root Input/Output Virtualization (SR-IOV) Support


2.) Ensure that the GPU is supported for the intended configuration.


3.) Visit the Microsoft website for the system requirements of DDA.


Links:



For assistance with BIOS settings, we recommend that you reach out to your OEM and Microsoft Support for specialized guidance. They are well-equipped to provide the necessary support for such technical enquiries. 


 

Best regards,

Carmona A.

Intel Customer Support Technician


0 Kudos
ACarmona_Intel
Moderator
4,436 Views

Hello Samadhan, 


We are checking in with you to know if you have already performed the troubleshooting steps that we have provided or if you have any additional queries. Please know that we would be happy to assist you if you have any.


Thank you, and have a great day!



Best regards,

Carmona A.

Intel Customer Support Technician


0 Kudos
ACarmona_Intel
Moderator
4,171 Views

Hello Samadhan, 

 

Again, we are checking in with you to know if you have already performed the troubleshooting steps that we have provided or if you have any additional queries. Please know that we would be happy to assist you if you have any.

 

Thank you, and have a great day!

 

 

Best regards,

Carmona A.

Intel Customer Support Technician


0 Kudos
ACarmona_Intel
Moderator
4,025 Views

Hello Samadhan, 


We have not heard back from you, so we will close this enquiry now. If you need further assistance, please submit a new question, as this thread will no longer be monitored.


By the way, it is also highly recommended that you contact your system manufacturer for additional assistance, as they might have important insights or solutions to the issue since they've already customized your system.


Thank you, and have a great day ahead.



Best regards,

Carmona A.

Intel Customer Support Technician


0 Kudos
Reply