Bug 2016063 Comment 13 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Looking at the profile: X.com is sending a single `requestAdapter` message to the WebGPU parent, wgpu calls `D3D12CreateDevice` for both GPUs and most of the time is spent in the D3D12 runtime/GPU driver for one of the calls. There are quite a few kernel calls that go to the kernel mode driver, including: `ZwSignalAndWaitForSingleObject` which the sampling profiler can't tell how long it took to complete. I suspect all this work the KMD is doing is blocking the decoder.

> More details : The bug happens only when Firefox uses integrated intel GPU for hardware acceleration not when I set Firefox to use dedicated NVIDIA GPU.

That's interesting all the work that I see in the profiler seems to be due to the D3D12 runtime creating some sort of special device (calls `D3D12CoreCreateLayeredDevice`, call to `CCreateDeviceCache::LoadUMD`, creates extra compute and graphics pipelines, fn call uses `_D3D12_DEVICE_SINGLE_ADAPTER_HYBRID_MDOE`).

I would be interested in knowing more about how/where you setup Firefox to use the Nvidia GPU. Also, is the Nvidia GPU your main GPU? Do you know which GPU is connected to your display?
Looking at the profile: X.com is sending a single `requestAdapter` message to the WebGPU parent, wgpu calls `D3D12CreateDevice` for both GPUs and most of the time is spent in the D3D12 runtime/GPU driver for one of the calls. There are quite a few kernel calls that go to the kernel mode driver, including: `ZwSignalAndWaitForSingleObject` which the sampling profiler can't tell how long it took to complete. I suspect all this work the KMD is doing is blocking the decoder.

> More details : The bug happens only when Firefox uses integrated intel GPU for hardware acceleration not when I set Firefox to use dedicated NVIDIA GPU.

That's interesting all the work that I see in the profiler seems to be due to the D3D12 runtime creating some sort of special device (calls `D3D12CoreCreateLayeredDevice`, call to `CCreateDeviceCache::LoadUMD`, creates extra compute and graphics pipelines, fn call uses `_D3D12_DEVICE_SINGLE_ADAPTER_HYBRID_MDOE`).

I would be interested in knowing more about how/where you setup Firefox to use the Nvidia GPU. Also, is the Nvidia GPU your main GPU? Do you know which GPU is connected to your display? Is the laptop battery powered or plugged in when this issue appears?

Back to Bug 2016063 Comment 13