New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 775983 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Feature



Sign in to add a comment

Write a UMA metric for availability of Vulkan vs DX12 on Windows

Project Member Reported by piman@chromium.org, Oct 18 2017

Issue description

We want to figure out the viability / bang-for-buck of various backend approaches for Skia (and other things) using modern graphics APIs. Getting some data about how many of our users have a functional DX12 and Vulkan would be very valuable to do this.

Proposal: use a non-sandboxed utility process to try to dynamically load and instantiate DX12 and Vulkan, then report in UMA. We would probably want to make sure we measure per-user, not per-launch (to avoid bias).
 
I'm not actually sure if per-user or per-launch is better. I could argue that one both ways, perhaps we should collect both. If we do do per-launch it would be nice to cache the result somewhere so that we do the subprocess spawn only once.

It's been a very long time since I did anything on windows but I confess I was assuming we could figure this out by looking at registry keys - I take it that's naive?

Comment 2 by reed@google.com, Oct 18 2017

Cc: robertphillips@chromium.org brianosman@chromium.org
Owner: reed@google.com

Comment 3 by reed@google.com, Oct 18 2017

Cc: egdaniel@chromium.org

Comment 4 by piman@chromium.org, Oct 18 2017

I don't know much about DX12, maybe it can be probed via registry keys. Not sure if we might have false-positives (keys present but non-functional driver).

For Vulkan, we'd have to test the presence of the Vulkan loader and load it (LoadLibrary) to query available drivers/devices (or even create a VkInstance/VkDevice). One might be able to bypass the loader and replicate its functionality (open manifest json files in known location), though that seems like it would increase the chance of false positives.
My understanding of the DX12 situation (just based on some quick research):
- Requires Windows 10, but if you have Win10, you have the runtime...
- In addition, DX12 requires a GPU that supports the 11_0 feature level (which is the big limitation on HW capabilities).

Looking at Wikipedia (https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units), Intel GPUs manufactured since 2013 all support DX12 (except for a few low-end parts from 2015!?).

Actually, the Wikipedia "List of XXX GPUs" articles are usually my first stop for getting general information about version support of different APIs (and performance info). That table also includes Vulkan information, which suggests that no Windows driver existed for Intel GPUs until 2015 parts - and even then I think we'd have to verify that it's installed.

Comment 6 by ericrk@chromium.org, Oct 18 2017

Labels: -Type-Bug Type-Feature
Status: Assigned (was: Untriaged)

Comment 7 by reed@google.com, Oct 20 2017

Owner: ----

Comment 8 by piman@chromium.org, Feb 5 2018

Owner: zmo@chromium.org
zmo@ do you think you could look at this?

Comment 9 by zmo@chromium.org, Feb 14 2018

Sure. I am looking into this.

Comment 10 by zmo@chromium.org, Feb 15 2018

Cc: jmad...@chromium.org
Cc: lfy@google.com
+Frank

Comment 12 by zmo@chromium.org, Mar 20 2018

Owner: magchen@chromium.org
Project Member

Comment 13 by bugdroid1@chromium.org, Apr 12 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/35d65e4a3183aaf2a394493288df064b444d74f8

commit 35d65e4a3183aaf2a394493288df064b444d74f8
Author: Maggie Chen <magchen@chromium.org>
Date: Thu Apr 12 21:15:25 2018

Adding SupportsDX12 and SupportsVulkan to UMA histogram for the Windows platform

The purpose of this code change is to collect DX12 and Vulkan information on users' Windows systems
so that we know which one is more popular. This DX12 vs Vulkan statistcs on Windows will be very
helpfull in the software design decision making.

During BrowserThreadsStarted, a 15 second delayed task will be posted to start an un-sandboxed GPU
process. This process will determin if DX12 and Vulkan can be supported in the Windows system. Two
new UMA_HISTOGRAM_BOOLEAN, GPU.SupportsDX12 and GPU.SupportsVulkan, are added
to record this result.

DX12 support is determined by the success in D3D12CreateDevice() and Vulkan support is determined
by the success in vkEnumeratePhysicalDevices().

This information is also added to the GPU info. Now "about:gpu" on Windows system will show if DX12
and Vulkan are supported.

All the added functions will be running on the Windows platforms only.


BUG= 775983 
TEST=manual,Chrome://histograms
R=zmo@chromium.org

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Icf52cebaf89ea5f41d364ea147f7fa74d1c6331b
Reviewed-on: https://chromium-review.googlesource.com/996594
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550361}
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/components/viz/host/server_gpu_memory_buffer_manager_unittest.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/components/viz/service/gl/gpu_service_impl.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/components/viz/service/gl/gpu_service_impl.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/browser_main_loop.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl_private.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl_private.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_internals_ui.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/DEPS
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info_collector.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info_collector_win.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/ipc/common/gpu_info.mojom
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/ipc/common/gpu_info_struct_traits.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/ipc/common/gpu_info_struct_traits.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/services/viz/privileged/interfaces/gl/gpu_service.mojom
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/tools/metrics/histograms/histograms.xml

Comment 14 by zmo@chromium.org, Apr 12 2018

Congrats, Maggie, on your first Chromium CL!

Comment 15 by magchen@google.com, Apr 12 2018

Thank you Mo for helping me with this implementation.
Project Member

Comment 16 by bugdroid1@chromium.org, Apr 17 2018

Labels: merge-merged-testbranch
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/35d65e4a3183aaf2a394493288df064b444d74f8

commit 35d65e4a3183aaf2a394493288df064b444d74f8
Author: Maggie Chen <magchen@chromium.org>
Date: Thu Apr 12 21:15:25 2018

Adding SupportsDX12 and SupportsVulkan to UMA histogram for the Windows platform

The purpose of this code change is to collect DX12 and Vulkan information on users' Windows systems
so that we know which one is more popular. This DX12 vs Vulkan statistcs on Windows will be very
helpfull in the software design decision making.

During BrowserThreadsStarted, a 15 second delayed task will be posted to start an un-sandboxed GPU
process. This process will determin if DX12 and Vulkan can be supported in the Windows system. Two
new UMA_HISTOGRAM_BOOLEAN, GPU.SupportsDX12 and GPU.SupportsVulkan, are added
to record this result.

DX12 support is determined by the success in D3D12CreateDevice() and Vulkan support is determined
by the success in vkEnumeratePhysicalDevices().

This information is also added to the GPU info. Now "about:gpu" on Windows system will show if DX12
and Vulkan are supported.

All the added functions will be running on the Windows platforms only.


BUG= 775983 
TEST=manual,Chrome://histograms
R=zmo@chromium.org

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Icf52cebaf89ea5f41d364ea147f7fa74d1c6331b
Reviewed-on: https://chromium-review.googlesource.com/996594
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550361}
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/components/viz/host/server_gpu_memory_buffer_manager_unittest.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/components/viz/service/gl/gpu_service_impl.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/components/viz/service/gl/gpu_service_impl.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/browser_main_loop.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl_private.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_data_manager_impl_private.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/content/browser/gpu/gpu_internals_ui.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/DEPS
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info_collector.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/config/gpu_info_collector_win.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/ipc/common/gpu_info.mojom
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/ipc/common/gpu_info_struct_traits.cc
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/gpu/ipc/common/gpu_info_struct_traits.h
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/services/viz/privileged/interfaces/gl/gpu_service.mojom
[modify] https://crrev.com/35d65e4a3183aaf2a394493288df064b444d74f8/tools/metrics/histograms/histograms.xml

Project Member

Comment 17 by bugdroid1@chromium.org, Apr 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d

commit ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d
Author: Maggie Chen <magchen@chromium.org>
Date: Thu Apr 19 01:48:38 2018

Adding D3d12FeatureLevel and VulkanVersion UMA histogram for Windows

In addition to GPU.SupportsDX12 and GPU.SupportsVulkan, two more UMA_HISTOGRAM_ENUMERATION,
GPU.D3d12FeatureLevel and GPU.VulkanVersion, are added in this CL to record the supported
D3D12 and Vulkan version in the GPU drivers.

The only valid D3D12 versions are 12.0 and 12.1.The only valid Vulkan version are 1.0.0 and 1.0.1

For the about:gpu page, "Supports DX12" and "Supports Vulkan" are removed after
"Driver D3D12 feature level" and "Driver Vulkan API version" are added.

BUG= 775983 
TEST=manual,Chrome://histograms
R=zmo@chromium.org

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: I7e1d1c2b676a0bf1862ac9f7e53884d61d28bb7e
Reviewed-on: https://chromium-review.googlesource.com/1012752
Commit-Queue: Maggie Chen <magchen@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551916}
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/components/viz/service/gl/gpu_service_impl.cc
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/content/browser/gpu/gpu_data_manager_impl_private.cc
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/content/browser/gpu/gpu_internals_ui.cc
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/gpu/config/gpu_info.cc
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/gpu/config/gpu_info.h
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/gpu/config/gpu_info_collector.h
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/gpu/config/gpu_info_collector_win.cc
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/gpu/ipc/common/gpu_info.mojom
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/gpu/ipc/common/gpu_info_struct_traits.cc
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/gpu/ipc/common/gpu_info_struct_traits.h
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/ddea63e3aace80fe5b1ed75a02f8797ae7cecd7d/tools/metrics/histograms/histograms.xml

Project Member

Comment 18 by bugdroid1@chromium.org, Apr 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/403310d4bb03927dc753383d9be24ec89c746625

commit 403310d4bb03927dc753383d9be24ec89c746625
Author: Maggie Chen <magchen@chromium.org>
Date: Thu Apr 26 04:14:28 2018

Adding a callback function to the DX12/Vulkan info collection path for the gpu info update

The callback function UpdateGpuInfoOnIO is added to the DX12/Vulkan info collection path. The data
is now saved in gpu_info of the browser process.

Both DX12 and Vulkan info collection functions are removed from the about:gpu path. The data can
be found in the gpu info. There is no need to call these two functions again.

BUG= 775983 
TEST=manual,Chrome://histograms
R=zmo@chromium.org

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: I6716aed172c8c6821f60124fb9cedc0c2e2b5079
Reviewed-on: https://chromium-review.googlesource.com/1026946
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553910}
[modify] https://crrev.com/403310d4bb03927dc753383d9be24ec89c746625/components/viz/host/server_gpu_memory_buffer_manager_unittest.cc
[modify] https://crrev.com/403310d4bb03927dc753383d9be24ec89c746625/components/viz/service/gl/gpu_service_impl.cc
[modify] https://crrev.com/403310d4bb03927dc753383d9be24ec89c746625/components/viz/service/gl/gpu_service_impl.h
[modify] https://crrev.com/403310d4bb03927dc753383d9be24ec89c746625/content/browser/gpu/gpu_data_manager_impl_private.cc
[modify] https://crrev.com/403310d4bb03927dc753383d9be24ec89c746625/gpu/config/gpu_info_collector.h
[modify] https://crrev.com/403310d4bb03927dc753383d9be24ec89c746625/gpu/ipc/common/gpu_info_struct_traits.cc
[modify] https://crrev.com/403310d4bb03927dc753383d9be24ec89c746625/services/viz/privileged/interfaces/gl/gpu_service.mojom

Project Member

Comment 19 by bugdroid1@chromium.org, Apr 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a2473319f7a5edc1a823f4ca5676e87da393ed35

commit a2473319f7a5edc1a823f4ca5676e87da393ed35
Author: Maggie Chen <magchen@chromium.org>
Date: Mon Apr 30 19:19:59 2018

Adding new UMA histograms for Vulkan extensions on Windows

Three UMA histograms are added to record whether the GPU supports these Vulkan extensions
GPU.VulkanExtSuport.VK_KHR_external_memory_win32,
GPU.VulkanExtSuport.VK_KHR_external_semaphore_win32,
GPU.VulkanExtSuport.VK_KHR_win32_keyed_mutex

BUG= 775983 
TEST=manual,Chrome://histograms
R=zmo@chromium.org

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: I851d262e158c3757ecba74f98f3cc6ac79213a47
Reviewed-on: https://chromium-review.googlesource.com/1025030
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Commit-Queue: Maggie Chen <magchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#554840}
[modify] https://crrev.com/a2473319f7a5edc1a823f4ca5676e87da393ed35/gpu/config/gpu_info_collector_win.cc
[modify] https://crrev.com/a2473319f7a5edc1a823f4ca5676e87da393ed35/tools/metrics/histograms/histograms.xml

Status: Fixed (was: Assigned)
The following UMA histograms have been recorded. This feature implementation is done.
GPU.SupportsDX12
GPU.D3D12FeatureLevel
GPU.SupportsVulkan
GPU.VulkanVersion
GPU.VulkanExtSuport.VK_KHR_external_memory_win32,
GPU.VulkanExtSuport.VK_KHR_external_semaphore_win32,
GPU.VulkanExtSuport.VK_KHR_win32_keyed_mutex
Project Member

Comment 21 by bugdroid1@chromium.org, May 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9

commit 5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9
Author: Maggie Chen <magchen@chromium.org>
Date: Tue May 22 07:51:04 2018

Add a new GPU feature: GPU_FEATURE_TYPE_PROTECTED_VIDEO_DECODE

Intel GPU Kabylake or newer hardware can support Protected Video
decoding in Windows. This new GPU feature type is added for this
support.

BUG= 775983 
TEST=gpu/config/gpu_blacklist_unittest.cc
R=zmo@chromium.org

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: Iaa3a6aff8bdda8c9ede3a9ef7c4f7fef513db36e
Reviewed-on: https://chromium-review.googlesource.com/1067198
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560509}
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/content/browser/gpu/compositor_util.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/content/browser/gpu/gpu_data_manager_testing_arrays_and_structs_autogen.h
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/command_buffer/common/capabilities.h
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/command_buffer/service/gles2_cmd_decoder_passthrough.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/config/gpu_blacklist.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/config/gpu_blacklist_unittest.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/config/gpu_feature_type.h
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/config/gpu_util.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/config/software_rendering_list.json
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/ipc/common/gpu_command_buffer_traits_multi.h
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/ipc/service/direct_composition_surface_win.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/gpu/ipc/service/direct_composition_surface_win.h
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/ui/gl/gl_surface.cc
[modify] https://crrev.com/5df399546aa6f3fa5b20b8fdb2cf6bf49a3aa6b9/ui/gl/gl_surface.h

Project Member

Comment 22 by bugdroid1@chromium.org, May 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5b1da00abf1aceb381c061e43169587faecb989d

commit 5b1da00abf1aceb381c061e43169587faecb989d
Author: Maggie Chen <magchen@chromium.org>
Date: Tue May 29 17:33:27 2018

Add support for protected video in creating the overlay swapchain.

Two flags DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED and DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY are set in
CreateSwapChainForCompositionSurfaceHandle() when the video content is protected.

BUG= 775983 
R=zmo@chromium.org

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: Idac7fda077a98b26c3529edcb89d6fa0ad9da27f
Reviewed-on: https://chromium-review.googlesource.com/1072732
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Maggie Chen <magchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562490}
[modify] https://crrev.com/5b1da00abf1aceb381c061e43169587faecb989d/gpu/ipc/service/direct_composition_surface_win.cc

Where can one find these UMA results?
Found it
Note: the stats on the stable channel are more representative of our user base. They show DX12 and Vulkan support roughly on par (~18%). Canary shows a bias towards support for both (also both roughly on par ~38%).

Sign in to add a comment