Google-chrome – How to force Chrome to use integrated GPU for decoding

google-chromegpuhardware accelerationintegrated-graphicsvp9

I want Chrome to utilize iGPU (GT630 on i7-8700k) for video decoding, especially VP9 decoding on YouTube. My discrete GPU is GTX970 and it is not capable of decoding VP9. Currently, VP9 is software decoded on my system, putting load on CPU and occasionally skipping frames.

Both GPUs are detected by the system (Windows 10): GT630 as GPU0 and GTX970 as GPU1. I use 2 screens. I don't care where they need to be connected (970 or Motherboard) as long as Chrome uses iGPU and I can keep using Nvidia for gaming. One of the screens is 144Hz.
The motherboard is ASUS ROG Hero.

I've tried different settings, but nothing seems to work as intended, and usually people look for a solution to the exactly opposite problem…

Update (command switches):

Running chrome with --gpu-active-vendor-id=0x8086 --gpu-active-device-id=0x3E92 or --gpu-vendor-id=0x8086 --gpu-device-id=0x3E92 or --gpu-testing-vendor-id=0x8086 --gpu-testing-device-id=0x3E92 results in:

GPU0 VENDOR = 0x10de, DEVICE= 0x13c2 ACTIVE
GPU1 VENDOR = 0x8086, DEVICE= 0x3e92
GL_RENDERER ANGLE (NVIDIA GeForce GTX 970 Direct3D11 vs_5_0 ps_5_0)`

Vivaldi browser seems to accept --gpu-testing-vendor-id=0x8086 --gpu-testing-device-id=0x3E92 which results in:

GPU0 VENDOR = 0x8086, DEVICE= 0x3e92 ACTIVE
GL_RENDERER ANGLE (NVIDIA GeForce GTX 970 Direct3D11 vs_5_0 ps_5_0)`

However it still uses Nvidia for renderer and doesn't utilize GT630 igfx.

The only method that works so far is disabling Nvidia card in Device Manager, launching Chrome, and re-enabling Nvidia card. When Chrome is launched without the discrete card present in the system, it runs with the following configuration and it's the only one that uses HW decoding from GT630:

GPU0 VENDOR = 0x8086, DEVICE= 0x3e92 ACTIVE
GPU1 VENDOR = 0x10de, DEVICE= 0x13c2
GL_RENDERER ANGLE (Intel(R) UHD Graphics 630 Direct3D11 vs_5_0 ps_5_0)

Best Answer

I had this problem for a few months now and yesterday I found a solution to the problem:

Display settings -> Graphic settings -> Choose an app to set preference: Classic App -> Browse -> Firefox.exe (Chrome in your case) -> Firefox (Button that appears below the browse button) -> Options. I then chose Power Saving which makes my browser use the iGPU. High Performance would make the browser use my dedicated GPU.

Screenshot:enter image description here

Related Question