Handle multiple GPUs in about:support

RESOLVED FIXED in mozilla8

Status

()

Core
Graphics
RESOLVED FIXED
7 years ago
6 years ago

People

(Reporter: jrmuizel, Assigned: ajuma)

Tracking

(Blocks: 2 bugs)

unspecified
mozilla8
x86
Windows 7
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 2 obsolete attachments)

(Reporter)

Description

7 years ago
Currently we only show the primary device detected at start up. I'm not sure how this interacts with multiple gpus.

Updated

7 years ago
Blocks: 594464
(Assignee)

Updated

6 years ago
Blocks: 628129
(Assignee)

Updated

6 years ago
Assignee: nobody → ajuma
(Assignee)

Comment 1

6 years ago
Created attachment 549122 [details] [diff] [review]
Identify active GPU in about:support and crash reports

This is a revised version of Attachment 544601 [details] [diff] from Bug 628129.

This patch checks the Windows registry for the presence of dual GPUs. If dual GPUs are present:
-D3D9 is used to determine which GPU is active
-both the active and inactive GPUs are listed in about:support and in crash reports

There are no changes to the blacklisting logic. The current objective is to identify dual GPU systems and gather information that will help us decide whether we should later change the blacklisting logic to rely on what D3D9 tells us.
Attachment #549122 - Flags: review?(jmuizelaar)
(Reporter)

Comment 2

6 years ago
Comment on attachment 549122 [details] [diff] [review]
Identify active GPU in about:support and crash reports

Yes please.
Attachment #549122 - Flags: review?(jmuizelaar) → review+
(Assignee)

Comment 3

6 years ago
Created attachment 551742 [details] [diff] [review]
Identify active GPU in about:support and crash reports

Patch updated to include stubs for GetAdapter*2, GetDriver*2, and GetIsGPU2Active in all non-Windows implementors of GfxInfo.
Attachment #549122 - Attachment is obsolete: true
Attachment #551742 - Flags: review?(jmuizelaar)
(Reporter)

Updated

6 years ago
Attachment #551742 - Flags: review?(jmuizelaar) → review+
http://hg.mozilla.org/mozilla-central/rev/02d5f1c5d438
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED

Updated

6 years ago
Target Milestone: --- → mozilla8
Backed out due to 4% Ts regression :-(

http://hg.mozilla.org/mozilla-central/rev/ffb2a6be641a
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(Assignee)

Comment 6

6 years ago
This regression was surprising since the likely cause of it -- the D3D9 code -- should only run on machines where multiple GPUs are detected, but the Talos machines have a single GPU.

It turns out that the Windows registry on the Talos machines has entries for two display devices, even though there is only one GPU actually present (the additional entry is for an Intel 945GM). As a result, the D3D9 code is being run on the Talos machines. I verified that the D3D9 code increases Ts by about 4.1%, accounting for the entire regression. 

Since the display device entries in the registry seem to retain stale information, we need a better way to determine which GPUs are actually present on a machine.
For Direct3D 9, the following pages seem relevant:
http://msdn.microsoft.com/en-us/library/bb174315.aspx
http://msdn.microsoft.com/en-us/library/bb147355.aspx

For Direct3D 10 (and 11), this page seems relevant:
http://msdn.microsoft.com/en-us/library/ff476877.aspx
(Assignee)

Comment 8

6 years ago
Created attachment 553216 [details] [diff] [review]
List both GPUs in about:support and crash reports

This is the previous patch without any D3D9 code. That is, when the Windows registry lists more than one GPU, both GPUs will be included in about:support and in crash reports. However, no attempt is made to determine which GPU is currently active.

This seems like a reasonable approach to use for now, while we are still investigating better approaches.
Attachment #551742 - Attachment is obsolete: true
Attachment #553216 - Flags: review?(jmuizelaar)
(Assignee)

Updated

6 years ago
Attachment #553216 - Attachment description: Lisst both GPUs in about:support and crash reports → List both GPUs in about:support and crash reports
(Reporter)

Updated

6 years ago
Attachment #553216 - Flags: review?(jmuizelaar) → review+
http://hg.mozilla.org/mozilla-central/rev/f597467fac5e
Status: REOPENED → RESOLVED
Last Resolved: 6 years ago6 years ago
Resolution: --- → FIXED
(Assignee)

Comment 10

6 years ago
I've filed a follow-up bug (Bug 679110) for improving the way we determine which GPUs are actually present.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(Assignee)

Updated

6 years ago
Status: REOPENED → RESOLVED
Last Resolved: 6 years ago6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.