VMware Workstation

 View Only
Expand all | Collapse all

VMware Player hardware acceleration unavailable

  • 1.  VMware Player hardware acceleration unavailable

    Posted Apr 09, 2024 06:15 PM

    Hello! I'm using Vmware Player in Windows 10 64bits and I feel low performance when using virtual machines, especially when opening the browser, any page that uses reasonable graphics resources is enough to cause the feeling of slowness (I attach a print of Chrome's graphics settings).

     

     

    I've already tried using versions 17.5, 16 and 15 of VMware Player and in all of them I virtualized 3 environments, Centos 8 64bits, Centos 7 64bits and Ubuntu 64bits. In all versions with all environments, the browser's GPU settings remain the same and so does the slowdown in graphics resources. In the terminal or in text/code editors I don't experience low performance.

     

     

    My hardware configuration is

    Mother board X570 Aorus Ultra
    psu xpg core reactor 850W 80 Plus Gold Modular
    Ryzen 9 3900XT CPU 12 cores 24 threads
    Aorus Water Cooler 280ml
    RAM 64GB(4x16) HyperX 3733mhz
    SSD NVME SN850 Western 1TB 7000MB/s
    VGA Zotac Trinity RTX 3090 24GB

     

     

    My VMs settings are (I'll attach a print of this too):
    Ram 32GB (I've already tried 8 )
    Processors 12 (I've already tried 4)
    Graphic memory 8 (I've already tried 1).

     



    I'm using a 4K monitor and I generally use the VM in full screen, but I notice that when I resize the VM window to full HD resolution (1080p) the performance improves.

    I already added the lines mks.vk.allowUnsupportedDevices = "TRUE" and mks.gl.allowUnsupportedDrivers = "TRUE" To the vmx file and reinstalled vmware tools, but without success. 

     

     

    How can I solve the slowness problem in Chrome (and in other browsers too)?



  • 2.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 01:30 AM
    Eder999 wrote:


    I already added the lines mks.vk.allowUnsupportedDevices = "TRUE" and mks.gl.allowUnsupportedDrivers = "TRUE" To the vmx file and reinstalled vmware tools, but without success. 

    Those 2 vmx entries do not apply to your system as based on your screenshot it looks like you have a Windows host. Those entries only applicable for Linux hosts.

    There is a longstanding issue where there are rendering issues with Chrome (items/text on the webpage or menu appear as white) on Windows VMs running on Windows hosts when 3D acceleration is enabled. This problem has been around since version 14.x. Any browser/application that uses Chromium underneath (i.e. Visual Studio Code, Edge, Brave, Opera) will also be affected. There are posts where Viber and Dropbox client also have rendering issues. Viber and Dropbox are written using the Qt framework and under the hood Qt framework uses ANGLE graphics. Have no idea if the problem is with VMware or with Google (maker of ANGLE graphics) or both. The problem does not appear to affect VMware Workstation/Player running on Linux hosts or on Fusion running on macOS.

    One of the workarounds for the Chrome rendering issues is to disable the hardware acceleration (in chrome://settings/system) or disable 3D acceleration at the VM settings.

    A vmx workaround is to use OpenGL rendering (not recommended for Windows hosts with only Intel GPU). For version 17.5

    mks.enableDX12Renderer = "FALSE"
    mks.enableDX11Renderer = "FALSE"
    mks.enableGLRenderer = "TRUE"

    Make sure that the virtualHW.version is at a minimum 18 to have DX11 support inside the Windows VM. Make sure that the latest VMware Tools is also installed so that graphics driver will deliver the DX11 capability inside the VM.

    For Chrome inside the VM
    chrome://settings/system
    "Use graphics acceleration when available" is on
    chrome://flags
    "Choose ANGLE graphics backend" set to "Default"



  • 3.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 04:55 AM
      |   view attached

    Hello!
    Thanks for the answer.

     

    I tried disabling 3D acceleration in the VM and in the Chrome settings, but it didn't help.

     

    I added the lines you gave me to the vmx file (which I will leave attached), but also without success.

     

    My virtualHW.version is 21.

     

    After the previous changes I tried to reinstall the vm tools inside the virtual machine, but it didn't improve either.

     

    Chrome's option to use graphics acceleration when available was already on

    I set the ANGLE graphics backend to default and even after all these steps the problem continues.

     

    I don't know if I was clear in my initial comment, but my browser can render everything without problems, but it does so extremely slowly.

     

    I believe that for some unknown reason, my VM does not recognize the host's video card and cannot use it to accelerate graphics within the virtual machine.

     

    Thank you for trying to help me, but unfortunately it didn't work =(

    Attachment(s)

    txt
    vmx_content.txt   4 KB 1 version


  • 4.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 06:32 AM

    I don't know if I was clear in my initial comment, but my browser can render everything without problems, but it does so extremely slowly.


    I understand your problem. I was giving you a heads-up/warning that you will likely face the rendering issues once Chrome acceleration is working inside the VM as your system has a Windows host.


    I believe that for some unknown reason, my VM does not recognize the host's video card and cannot use it to accelerate graphics within the virtual machine.


    The VM will not recognise the host video card as-is. It only has a virtual GPU with a VMware vendor ID. What VMware software does is make use of the host GPU to deliver the DX11/OpenGL capabilities inside the VM. For your case you should see mksSandbox.exe process running on the Nvidia GPU using the nvidia-smi command line tool.

    I don't normally install Chrome on my VMs. I installed Chrome (version 123.0.6312.105) on an OpenSUSE Tumbleweed VM. It looks like 3D acceleration is disabled but the ANGLE graphics options are different from that for Chrome (version 123.0.6312.106) on Windows .Chrome on OpenSUSE had "Default ANGLE Vulkan" and "Vulkan from ANGLE". But there is no Vulkan capability inside VMware VMs (whether Linux or Windows).

    For OpenSUSE Tumbleweed (probably for any Linux VM), go to chrome://flags

    "Override software rendering list" and set it as "Enabled" and chrome://gpu shows hardware accelerated as on. There is equivalent setting on Chrome and MS Edge on Windows.



  • 5.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 01:31 PM

    I run the nvidia-smi command in my cmd as administrator and it returned the following:

    Eder999_0-1712755896232.png

     

    From what I could see
    mksSandbox.exe is not present in the command return. Could this be the problem? Is there any way to resolve it?

     


    In the VM I set the "Override software rendering list" to "Enabled" and it appeared that hardware accelerated was activated, but without any improvement in performance.

     

     

    I only used Chrome as an example, I generally use Opera and I have also tested with Firefox which is installed by default on Linux, they all have the same problem.



  • 6.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 02:31 PM

    The mksSandbox.exe should appear when the VM is running with 3D enabled. Each VM would have their own mksSandbox.exe process. So if you have 3 VMs running simultaneously with 3D enabled, there should be 3 mksSandbox.exe in the nvidia-smi output.

    For a Linux VM, the other way of confirming that 3D is running inside the VM, from Terminal

    glxinfo | grep -i opengl
    OpenGL core profile version should show 4.1.

    or
    glxgears
    should show roughly 60fps.

    I think Opera should have similar entries as Chrome and Edge as it is also based on Chromium so it is likely opera://flags instead of chrome:// or edge://
    With acceleration enabled, you should see that the GL_RENDERER is ANGLE with VMware

    This is from an Edge browser inside Windows 11 VM.
    GL_RENDERER : ANGLE (VMware, VMware SVGA 3D (0x00000405) Direct3D11 vs_5_0 ps_5_0, D3D11-9.17.7.2)

    A Linux VM would show VMware but using OpenGL 4.1 core profile as Linux does not have D3D11.

    As your host is running Windows, it is also possible it slows down due to the presence of Hyper-V.
    Look at vmware.log and Monitor Mode show ULM that means Hyper-V is running.
    If msinfo32 on the host show either Kernel DMA Protection as "On", VBS as "running" or "Defender Application Guard" as "Enforced" that means Hyper-V is running.
    Enabling WSL2 (even if it is not running) will also enable Hyper-V.

    If you want to try turning of Hyper-V look at this long post.
    https://communities.vmware.com/t5/VMware-Workstation-Pro/Disabling-Hyper-V-hypervisor-on-Windows-11-Pro-host-to-get/m-p/2989411#M182968

    Kernel DMA Protection needs to be turned off at the host UEFI.



  • 7.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 04:44 PM

    There is no mksSandbox.exe process, but the rest seems correct.

    OpenGL core profile version is 4.5 and glxgears returned 150fps as you can see below:

     

    Eder999_3-1712766894679.png


    In the log file, Monitor Mode is set to CPL0 as you can see below:

    Eder999_4-1712766947934.png


    DMA Protection is disabled and I didn't find VBS nor Defender Application Guard" in msinfo32 and Kernel DMA Protection is off

    WSL was installed, I uninstalled it, restarted the host and the vms, but even after all this the problem continues.

    Not having mksSandbox in the nvidia command return could mean that my gpu is not being used in the virtual machine, right?

    I don't know what else to do, but anyway I thank you for your help.






  • 8.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 09:49 PM

    The mksSandbox.exe should appear while the VMware is using the GPU. It would be vmware-vmx.exe instead of mksSandbox.exe only if the ISBRenderer was turned off (the behaviour of version 15.x). The mksSandbox process was introduced in version 16.x

    If the VM is showing OpenGL 4.5 in glxinfo and showing higher than 60fps for glxgears that means the 3D acceleration is not using the GPU. Yes, it sounds weird despite higher OpenGL version and higher fps in glxgears. It looks like it is not using the GPU.

    Can you attach the vmware.log and mksSandbox.log of the VM?



  • 9.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 10, 2024 09:53 PM

    Yes, I will attach them

    Attachment(s)

    log
    mksSandbox.log   60 KB 1 version
    log
    vmware.log   163 KB 1 version


  • 10.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 11, 2024 12:00 AM

    The mksSandbox.log and vmware.log are from different VM sessions. The timestamp difference is almost 13 hours.
    The mksSandbox.log showed it that the GPU was being used; while the vmware.log showed only MKSBasicOps only 3D was disabled.
    It looks like the vmx is missing mks.enable3D = "TRUE" from the vmware.log (the later session). You probably unchecked it from the settings.


    2024-04-10T04:32:06.439Z In(05) mks GLRenderer: OpenGL Version: "4.6.0 NVIDIA 552.12" (4.6.0)
    2024-04-10T04:32:06.439Z In(05) mks GLRenderer: OpenGL Vendor: "NVIDIA Corporation"
    2024-04-10T04:32:06.439Z In(05) mks GLRenderer: OpenGL Renderer: "NVIDIA GeForce RTX 3090/PCIe/SSE2"
    2024-04-10T04:32:06.439Z In(05) mks GLRenderer: Driver Version: "4.6.0 NVIDIA 552.12" (552.12)
    2024-04-10T04:32:06.439Z In(05) mks GLRenderer: GLSL Version: "4.60 NVIDIA" (4.60.0)

    2024-04-10T17:07:35.676Z In(05) mks MKS-RenderMain: PowerOn allowed MKSBasicOps
    2024-04-10T17:07:35.676Z In(05) mks MKS-RenderMain: ISB enabled by config
    2024-04-10T17:07:35.676Z In(05) mks MKS-RenderMain: Collecting RenderOps caps from MKSBasicOps
    2024-04-10T17:07:35.676Z In(05) mks MKS-RenderMain: Starting MKSBasicOps
    2024-04-10T17:07:35.676Z In(05) mks MKS-RenderMain: Started MKSBasicOps
    2024-04-10T17:07:35.676Z In(05) mks MKS-RenderMain: Found Full Renderer: MKSBasicOps
    2024-04-10T17:07:35.870Z In(05) vmx SVGA3dCaps: host, at power on (3d disabled)



  • 11.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 11, 2024 02:18 AM

    Sorry, I turned it off a few hours ago to do a test and forgot to turn it back on.

    Now it is on, but still the slow problem persists. I am attaching the last session logs and the vmx file.

    Thank you for the patience.

    Attachment(s)

    log
    vmware.log   212 KB 1 version
    log
    mksSandbox.log   60 KB 1 version


  • 12.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 11, 2024 10:57 AM

    What fps do you get in the VM now with 3D enabled, and Chrome have acceleration enabled in this WebGL dynamic cubemap sample at 4K full screen?
    https://webglsamples.org/dynamic-cubemap/dynamic-cubemap.html

    Just for comparison, the system I have has an RTX 2070 Super with multiple monitors
    3840x2160 at 60Hz with DP1.2 connection
    2560x1440 at 165Hz with DP1.4 connection
    Workstation Pro 16.2.5 on Ubuntu 22.04 host

    Inside OpenSUSE VM, 4K full screen test
    Firefox default settings, around 7-9fps only
    Chrome default settings (i.e. Override software rendering list Disabled) around 7-8fps only
    Chrome with Override software rendering list Enabled, around 56-57fps

    Firefox (default settings) on Ubuntu host 165Hz 1440p monitor, around 165fps but the middle digit sometimes flicker as 5 or 7, the 3rd digit changes too fast.

    WebGL is just one aspect but it is one of the items that has acceleration in the chrome://gpu when the blocklist is ignored.

    It gets pretty difficult to diagnose as I don't see what you see and it's pretty subjective. The WebGL sample at least gives a number and shows whether the GPU acceleration is in effect or not inside the VM and within the browser. Other than ensuring that 3D acceleration is working inside the VM and the browser(s) don't block the VMware drivers, there is not much else.

    I don't have scaling enabled on any host monitor and neither on any guest OS. The monitors are 30-bit colour capable but I don't enable it on the Ubuntu host as last time I tried with version 15.5.x the colours of the VM then appeared incorrect. The 30-bit colour setting didn't affect VMs running on Windows 10 host though.

     



  • 13.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 11, 2024 01:12 PM

    First I made sure 3D acceleration is enabled in the VM settings

    Even with Override Software Render List enabled, I'm only getting 19~20 fps in Chrome.
    I tried disabling it to test and the result is the same 19~20 fps. Enabling or disabling the replacement software render list makes no difference to performance for me.



  • 14.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 11, 2024 02:00 PM

    Did you try running the webGL sample on the Windows host?

    It should closely match the refresh rate of the monitor. So if the refresh rate is nnn Hz, it should show nearly nnn fps. Just like the Firefox test on Ubuntu host with the 165Hz 1440p monitor, it showed nearly 165fps. Did you by any chance set a "Max Frame Rate" in Nvidia Control Panel of the Windows host? Also if the connection is HDMI 2.0, the monitor refresh rate drops to 30 if the colour depth is set to 10 (i.e. 30-bit RGB colour) and/or if HDR is enabled on the Windows host. Unless the monitor is HDMI 2.1, it is better to use either DP1.2 or DP1.4.

    I ran the WebGL sample on a Windows 10 PC with a GTX 950 2GB GPU, 1920x1200 60Hz monitor, using the Edge browser and it showed 60fps.

    The "Override software rendering list" enabled, aside from the Graphics Features status having acceleration enabled, the driver used should also have changed to VMware.

    openSUSE VM Chrome default settings (see spoiler)

    openSUSE VM Chrome with "Override software rendering list" enabled (see spoiler)



  • 15.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 12, 2024 04:21 AM

    Yes, I tested webGL on Windows host and it runs exactly 60fps.

    I didn't configure any frame limiter in the Nvidia panel, several of the games I usually play exceed 60fps in the fps counter.

    I'm using display port, I'm not sure of the version, but I'm sure it's enough for 4K and 60fps.

    I have a YouTube channel, if you feel necessary I can record a video showing the settings of the VM I'm using and how the browsers perform inside the VM and send you the video link. What do you think?



  • 16.  RE: VMware Player hardware acceleration unavailable

    Posted Apr 12, 2024 08:49 AM

    Don't bother with the YouTube video.

    Pretty much the stuff that can be configured at the VMware vmx level applicable to your system has been mentioned in this thread and the "Override software rendering list" that is required as Google has decided to block VMware virtual GPUs in Chromium.

    The Chrome/Chromium flag "override software rendering list" is really a misnomer. It is really a list of hardware/software GPUs that Chromium-based browsers will block specific or all graphics features based on version of OS version, driver version, etc.

    https://chromium.googlesource.com/chromium/src/+/31f8248cdd90acbac59f700b603fed0b5967ca50/gpu/config/software_rendering_list.json

    And if you look at entry 176, looks like Chromium will just disable all graphics features on a Linux VM.


    {
    "id": 176,
    "description": "VMware is buggy on Linux",
    "cr_bugs": [1327939],
    "os": {
    "type": "linux"
    },
    "vendor_id": "0x15ad",
    "features": [
    "all"
    ]
    }

    You could try switching back to DX12Renderer or DX11Renderer and see if that makes any difference. But you have been warned of the possible rendering issues.
    You could also try with a Windows 10/11 VM but I think the "override software rendering list" will still need to be enabled inside Edge browser or any Chromium-based browser.

    But other than these, from the looks of things, it might be something else that is going on preventing the Chrome/Chromium in CentOS VM not having the same GPU acceleration despite the override of the #ignoregpublocklist.

     



  • 17.  RE: VMware Player hardware acceleration unavailable

    Posted Jan 15, 2025 01:42 PM

    Oh man.. I've been trying to figure out how to get my chrome running with hardware acceleration in an Ubuntu VM on my Windows host forever. Thanks a bunch for this. Setting the Chrome flag "Override software rendering list" to enabled fixed my issue!




  • 18.  RE: VMware Player hardware acceleration unavailable

    Broadcom Employee
    Posted Jan 15, 2025 02:42 PM

    Here are the browser settings that have helped gfx performance in my testing:

    On Chrome (or Edge), go to the URL chrome://flags (or edge://flags) and set "Override software rendering list" to Enabled.

    For Firefox, go to about:config, search for "webgl.force-enabled" and set it to True, then restart Firefox.