Loading...

We've detected that your browser language is Chinese. Would you like to visit our Chinese website? [ Dismiss ]
By: Emma

GPU access in VMware is never automatic. Without the correct host configuration, licensing, and VM settings, the guest OS will not see your physical graphics hardware. Whether you need to enable GPU passthrough in VMware ESXi or set up shared access across multiple VMs, the right approach depends on your hypervisor and workload requirements.

This guide covers three methods for enabling GPU access in VMware environments:

  • VMDirectPath I/O (GPU Passthrough): Dedicated, 1:1 hardware assignment for maximum performance.
  • NVIDIA vGPU: Shared GPU access for enterprise-scale, multi-user workloads.
  • VMware Workstation 3D Graphics Acceleration: Emulated graphics for development and testing.

Each method has distinct hardware requirements, licensing implications, and use case trade-offs, all covered in the sections below.

What Does “Enable GPU in VMware” Mean

By default, VMware ESXi and Workstation rely on a software-emulated SVGA driver. Physical graphics hardware is not exposed to VMs automatically. If you need a VM to handle GPU-intensive tasks, access has to be explicitly configured.

VMware supports three distinct approaches, each suited to different environments and requirements.

GPU Passthrough vs. NVIDIA vGPU vs. Workstation 3D Acceleration

  • DirectPath I/O (Passthrough): Maps a physical PCIe GPU directly to a single VM. The guest OS interacts with the card as if it were bare metal, delivering full performance — but that GPU is dedicated to one VM only.
  • NVIDIA vGPU: Splits a physical GPU into multiple virtual profiles, allowing many VMs to share a single card simultaneously. Best suited for enterprise VDI and multi-user environments.
  • Workstation 3D Acceleration: Translates guest graphics calls into host API requests. The VM does not see the physical GPU directly, but gains hardware-assisted rendering for UI, basic 3D, and development workloads.

The table below summarizes the key differences.

Passthrough (DirectPath I/O) NVIDIA vGPU Workstation 3D
Platform ESXi / vSphere ESXi + NVIDIA license VMware Workstation
GPU per VM 1:1 dedicated 1 GPU, many VMs Virtual (shared host)
CUDA / AI workloads Full support C-series profiles only Not supported
VDI / multi-user No Yes No
Live VM migration Not supported Supported N/A
Cost Low (hardware only) High (licensing required) Low
Best for AI/ML, rendering, HPC Enterprise VDI, remote work Dev, testing, light 3D

Prerequisites: Before You Enable GPU in VMware

Before modifying your virtualization environment, verify that your hardware, host BIOS, hypervisor version, and licenses all meet the necessary requirements. Skipping these checks is the most common reason GPU virtualization setups fail.

Hardware Requirements

To enable GPU access in a VM, your host CPU and motherboard need to support hardware-assisted directed I/O.

  • Intel systems: Require Intel VT-d (Virtualization Technology for Directed I/O) enabled in the firmware.
  • AMD systems: Require AMD IOMMU (Input-Output Memory Management Unit) enabled.
  • GPU hardware: For passthrough, you need a dedicated secondary PCIe GPU. Using the GPU that drives the ESXi host console can cause system instability.

BIOS/UEFI Settings

Configure your host firmware before VMware can interact with the GPU:

  1. Enable Intel VT-d or AMD IOMMU. Do not leave this on “Auto.”
  2. Set any onboard integrated graphics as the primary boot display. This frees the discrete PCIe GPU for VM assignment.
  3. Enable Above 4G Decoding (also called Large BAR Support or Memory Mapped I/O above 4GB). This is required if your GPU has more than 16 GB of onboard memory, or if you plan to assign large amounts of RAM to the target VM.

VMware Version Compatibility

Different VMware versions handle PCIe passthrough differently:

  • ESXi 7.x vs. 8.x: ESXi 8.0 supports up to 32 passthrough devices per VM (up to 128 in later updates), while ESXi 7.x caps at 16.
  • VMware Workstation 17.x and later: Desktop hypervisors on Windows hosts do not support true hardware passthrough. Instead, they translate guest graphics calls into API requests handled by the host OS.

GPU Hardware and Driver Compatibility

NVIDIA and AMD divide their product lines into consumer and enterprise tiers, which determines virtualization support:

  • NVIDIA enterprise GPUs (A-series, L-series, H-series): Required for partitioning a single card across multiple VMs using NVIDIA vGPU.
  • Consumer GPUs (NVIDIA GeForce, AMD Radeon): Supported for 1:1 dedicated passthrough on ESXi. GeForce cards are architecturally blocked from running NVIDIA vGPU software.

Licensing Requirements

NVIDIA vGPU requires subscription-based licensing in addition to the hardware. The main options are:

  • NVIDIA Virtual PC (vPC): For standard office and VDI environments.
  • NVIDIA RTX Virtual Workstation (vWS): For CAD, 3D rendering, and professional design workloads.
  • NVIDIA Virtual Compute Server (vCS): For CUDA, AI, and machine learning workloads.

Once hardware and licensing are confirmed, you are ready to configure the hypervisor.

How to Enable GPU Passthrough in VMware ESXi (DirectPath I/O)

GPU passthrough (VMDirectPath I/O) gives a VM direct, exclusive access to a physical PCIe GPU, bypassing the hypervisor’s translation layer entirely. The guest OS sees the card as bare metal, making it suitable for AI/ML, rendering, and CUDA workloads.

Follow these four steps to configure passthrough on your ESXi host and assign the GPU to a VM.

Step 1: Enable Passthrough on the ESXi Host

Before a VM can use the GPU, ESXi needs to release control of the PCIe device.

  1. Log in to the ESXi Host Client or vCenter Server.
  2. Select the host, navigate to the Manage tab, then click Hardware > PCI Devices.Enable Passthrough on the ESXi Host 1
  3. Locate your GPU in the list. You can filter by “NVIDIA” or “AMD” using the search bar.
  4. Check the box next to the GPU (and its associated audio controller, if applicable).
  5. Click Toggle Passthrough.Enable Passthrough on the ESXi Host toggle passthrough
  6. Reboot the ESXi host to apply the change.
  7. After the reboot, return to PCI Devices and confirm that the Passthrough column shows Active.

Step 2: Assign the GPU to a Virtual Machine

  1. Power off the target VM completely.
  2. Select the VM and click Actions > Edit Settings.
  3. Click Add New Device and select PCI Device.select pci device
  4. In the PCI device dropdown that appears, select your GPU.
  5. Expand Memory and check Reserve All Guest Memory (All Locked)
    Note: ESXi requires 100% memory reservation for passthrough VMs. Without this, the VM will fail to power on with a PCI resource allocation error.
  6. Go to the VM Options tab and expand Boot Options.
  7. Set the firmware type to EFI. Modern GPUs require UEFI to initialize their base address registers (BARs) correctly.
  8. Click Save.

Step 3: Add the hypervisor.cpuid.v0 VMX Parameter

NVIDIA GeForce drivers can detect when they are running inside a VM and refuse to initialize, resulting in a “Code 43” error in the guest OS. Adding this parameter masks the hypervisor’s presence and prevents that error.

Note: Even with newer NVIDIA driver releases, this parameter is still recommended for GeForce cards on ESXi. Driver behavior varies by version, and skipping this step can result in initialization failures.
  1. With the VM powered off, open Edit Settings again.
  2. Go to VM Options > Advanced > Configuration Parameters > Edit Configuration.
  3. Click Add Parameter and enter:hypervisor.cpuid.v0 = FALSE
  4. Click OK, then Save.

Step 4: Install GPU Drivers in the Guest OS

  1. Power on the VM.
  2. Connect via RDP, SSH, or VNC.
Tip: Set up remote access before installing the GPU driver. Once the driver is active, the VMware Web Console may go blank, as it depends on the virtual SVGA adapter rather than the physical GPU.
  1. Download the official driver package for your GPU model from the NVIDIA or AMD website.
  2. Run the installer inside the guest OS, then reboot when prompted.
  3. Verify the installation:
    • Windows: Open Device Manager and confirm the GPU appears under Display adapters without any warning icons.
    • Linux: Run the following command and confirm the card is listed:
bash
lspci | grep -i nvidia

Once the GPU shows up cleanly, your VM is ready for GPU-accelerated workloads.

NVIDIA vGPU on VMware vSphere: Shared GPU for Multiple VMs

Unlike passthrough, NVIDIA vGPU lets multiple VMs share a single physical GPU simultaneously. This makes it practical for VDI deployments, engineering clusters, and AI pipelines where assigning a dedicated card per user is not feasible.

What You Need for NVIDIA vGPU

  • Compatible NVIDIA enterprise GPU: Supported models include the A-series (e.g., A16, A40) and L-series (e.g., L4, L40).
  • NVIDIA vGPU Manager for ESXi: A host-level driver that runs within the ESXi kernel to manage GPU resource scheduling.
  • NVIDIA Virtual GPU Software License: A subscription license served by the NVIDIA License System (NLS), required to activate vGPU features inside each guest VM.

Configuring the ESXi Host for vGPU

1. Log in to the vSphere Client and select your ESXi host.

2. Go to the Configure tab, expand Hardware, and select Graphics.

3. Under Host Graphics, click Edit and set the Default Graphics Type to Shared Direct.

Note: In older vSphere versions, this setting may appear as SharedPassthru. Both refer to the same GPU sharing mode.

4. Enable SSH on the host and connect via a secure shell client.

5. Put the host into Maintenance Mode:

bash
esxcli system maintenanceMode set --enable true

6. Copy the vGPU host driver VIB package to a datastore accessible by the host.

7. Install the driver using the absolute path to the VIB file:

bash
esxcli software vib install -v /vmfs/volumes/your-datastore/NVIDIA-VMware_ESXi_Driver.vib
Note: On ESXi 8.x, esxcli software vib install is deprecated. Use esxcli software component apply instead. Refer to your NVIDIA vGPU release notes for the exact command syntax.

8. Reboot the host, exit Maintenance Mode, and run the following to confirm the driver is loaded:

bash
nvidia-smi

Assigning a vGPU Profile to a VM

  1. Power off the target VM.
  2. Select the VM and click Actions > Edit Settings.
  3. Click Add New Device, select PCI Device, change the device type to NVIDIA vGPU, then choose your target GPU Profile.

Understanding NVIDIA vGPU Profile Names

NVIDIA profiles follow a standardized naming convention. For example, NVIDIA A40-4Q breaks down as:

  • A40: The physical GPU model.
  • 4: The VRAM allocated to this profile (in GB).
  • Q: The workload class.

Choosing the Right Workload Class

  • Q-series (Virtual Workstation): For CAD, 3D modeling, and graphics-intensive applications.
  • C-series (Compute): For CUDA, deep learning, and AI workloads.
  • B-series (Virtual PC): For standard office productivity and dual-monitor environments.

Guest Driver Installation

  1. Log in to the NVIDIA Licensing Portal and download the vGPU guest driver that matches the major version of your ESXi host driver.
  2. Power on the VM, transfer the installer, and run it inside the guest OS.
  3. Reboot the VM.
  4. Verify the installation by running the following inside the guest OS:
bash
nvidia-smi

The output should show the assigned virtual profile, its VRAM allocation, and any active processes.

Enabling 3D GPU Acceleration in VMware Workstation

VMware Workstation runs on top of a host OS rather than directly on hardware. This means GPU access works differently from ESXi — and understanding that difference matters before configuring anything.

What Workstation 3D Acceleration Does (and Does Not Do)

Workstation does not support PCIe passthrough. This is an architectural limitation of hosted hypervisors, not a configuration gap.

Instead, Workstation uses virtualization translation APIs to provide graphics acceleration:

  • The guest OS sees a virtual GPU: The VM loads the paravirtualized VMware SVGA 3D driver, not an NVIDIA or AMD driver.
  • Compute APIs are not exposed: NVIDIA CUDA, OptiX, and hardware video encoding (NVENC) do not function inside the VM. Running nvidia-smi in the guest will return no output.
  • Suitable workloads: UI acceleration, CAD previews, OpenGL and DirectX development, and lightweight 3D application testing.

How to Enable 3D Acceleration in VMware Workstation

  1. Power off the VM.
  2. Open VMware Workstation, select the VM, and click Edit virtual machine settings (or go to VM > Settings).edit virtual machine settings
  3. In the Hardware tab, select Display.virtual machine settings display
  4. Check Accelerate 3D graphics.cehck 3d graphics
  5. Under Graphics memory, set the amount of video memory to allocate to the virtual display adapter. 8 GB is sufficient for most graphical workloads.
  6. Click OK.
  7. Power on the VM and log in.
  8. Go to VM > Install VMware Tools and complete the installation inside the guest OS. 
  9. Reboot the guest OS. This installs the SVGA 3D driver required for 3D acceleration to function.
Note: If Install VMware Tools is grayed out, VMware Tools may already be installed. In that case, select Reinstall VMware Tools instead.

Common Issues and Fixes

Followings are some common issues and fixes:

Vulkan Renderer Conflict on Dual-GPU Laptops

On laptops with both an integrated Intel GPU and a discrete NVIDIA card, the VM may crash or display a black screen. Add the following parameter to the VM’s .vmx file to disable Vulkan rendering:

bash
mks.enableVulkanRenderer = "FALSE"

Graphical Corruption After a Workstation Update

Flashing windows or misaligned cursors after a Workstation update usually mean the SVGA driver in the guest is out of sync with the new host build. Uninstall VMware Tools from the guest OS, reboot, then reinstall the updated VMware Tools package.

3D Acceleration Option Is Grayed Out

Confirm that hardware virtualization extensions (Intel VT-x or AMD-V) are enabled in your host BIOS/UEFI. Workstation cannot provide hardware-accelerated graphics without these CPU features active.

Troubleshooting Common VMware GPU Errors

GPU virtualization involves tight coordination between host hardware, hypervisor, guest OS, and driver stack. The errors below cover the most common failures and how to resolve them.

 1. “Passthrough cannot be enabled until host is rebooted” (Status remains “Needs Reboot” after rebooting)

This usually means the ESXi kernel is still holding the GPU for its own console output and has not released it to the passthrough layer.

Fix: Reboot the host, return to PCI Devices, and toggle passthrough off and back on again. If the status still does not change to Active, connect via SSH and run:

bash
esxcli system settings kernel set -s vga -v FALSE
Note: This command disables VGA console output on the host. Only run it if the standard reboot-and-toggle approach does not resolve the issue, and ensure you have an alternative management path (such as IPMI or iDRAC) before doing so.

Reboot the host again after running the command and verify the passthrough status.

 

2. “Module ‘DevicePowerOn’ power on failed” (VM fails to start after adding PCI device)

PCIe passthrough devices require their memory to be pinned in place at all times. By default, ESXi can swap VM memory to disk, which is incompatible with direct device assignment.

Fix: Open Edit Settings for the VM, expand Memory, and check Reserve All Guest Memory (All Locked). Save and power on the VM.

 

3. GPU driver not detected / Windows Device Manager shows “Code 43”

Consumer GPUs (such as NVIDIA GeForce cards) can detect when they are running inside a VM and disable themselves deliberately.

Fix: Add the following parameter to the VM’s configuration to hide the hypervisor signature from the guest OS:

Go to Edit Settings > VM Options > Advanced > Configuration Parameters > Edit Configuration, then add:

hypervisor.cpuid.v0 = FALSE

Save the settings, power on the VM, and reinstall the GPU driver inside the guest OS.

 

4. “Module ‘MKS’ power on failed”

This error typically appears when setting up NVIDIA vGPU on a VM that also has VMware’s virtual 3D acceleration (vSGA) enabled. The two conflict at the virtual display layer.

Fix:

  1. Select the VM in vCenter and click Actions > Edit Settings.
  2. Expand Video card in the virtual hardware list.
  3. Uncheck Enable 3D support.
  4. Click Save and power on the VM.

The NVIDIA guest driver handles 3D acceleration directly once vSGA is disabled.

 

5. nvidia-smi returns “No devices were found” in VMware Workstation

This is expected behavior. VMware Workstation does not expose the physical GPU to the guest OS. The VM uses a virtual VMware SVGA 3D adapter instead, which means nvidia-smi, CUDA, and other GPU compute tools will not work inside the guest.

For CUDA or compute workloads, use ESXi with GPU passthrough or NVIDIA vGPU instead.

Migrating GPU-Enabled VMware VMs with i2Migration

GPU passthrough blocks vSphere live migration (vMotion). When the VM has a physical PCIe device directly assigned, the standard migration path is unavailable. This becomes a real problem during hardware upgrades, host decommissions, or data center consolidations where these VMs still need to move.

Moving a GPU passthrough VM typically requires powering it down, removing the PCI device assignment, migrating the VM, then reconfiguring passthrough on the new host. For environments running multiple GPU-accelerated workloads, doing this manually at scale is time-consuming and error-prone.

i2Migration is built for exactly these kinds of complex migration scenarios. It supports non-disruptive full machine migration using hybrid block-level and file-level replication, so production workloads keep running during the transfer. Once the migration is complete, GPU passthrough can be reconfigured on the destination host with the system already in place.

Key Features 

  • Cross-environment coverage: Supports P2V, V2V, virtual-to-cloud, and hybrid-cloud migration paths, making it practical whether you are moving between ESXi hosts, consolidating into a private cloud, or migrating to a public cloud platform.
  • Hardware-agnostic migration: Handles BIOS/UEFI conversion and driver injection automatically, so the guest OS boots correctly on destination hardware even when the underlying server model changes.
  • Zero-downtime transfer: Hybrid replication keeps the source system live throughout the migration window, reducing the service interruption that comes with taking GPU workloads offline.
  • Secure and efficient transfer: AES/SM4 encryption, bandwidth control, and resume-from-breakpoint support ensure the migration completes reliably, even over long distances or unstable links.
  • Built-in validation: End-to-end dataset validation with automatic correction confirms data integrity before and after the transfer, reducing the risk of silent data loss during a complex move.

For teams also running VMware HA configurations alongside GPU workloads, pairing i2Migration with i2Availability provides a more complete picture: i2Migration handles the one-time move, while i2Availability maintains real-time replication and automatic failover for ongoing high availability protection.

FREE Trial for 60-Day

Conclusion

GPU access in VMware comes down to matching the right method to your environment. Passthrough delivers full hardware performance for a single VM. NVIDIA vGPU shares that hardware across multiple users. Workstation 3D acceleration covers development and testing without specialized hardware.

When passthrough VMs eventually need to move, plan ahead. Tools like Info2soft’s i2Migration handle the complexity of migrating GPU-configured workloads across hosts and environments without disrupting production.

Emma is the bridge between complex engineering and the people who need it. As a content creator at Info2Soft, she spends her days translating "tech-speak" into clear, actionable stories about data resilience. She’s not just documenting software; she's uncovering how data replication and recovery actually change the way businesses run.

More Related Articles

Table of Contents:
Stay Updated on Latest Tips
Subscribe to our newsletter for the latest insights, news, exclusive content. You can unsubscribe at any time.
Subscribe
Ready to Enhance Business Data Security?
Start a 60-day free trial or view demo to see how Info2soft protects enterprise data.
{{ country.name }}
Please fill out the form and submit it, our customer service representative will contact you soon.
By submitting this form, I confirm that I have read and agree to the Privacy Notice.
{{ isSubmitting ? 'Submitting...' : 'Submit' }}