summaryrefslogtreecommitdiffstats
path: root/gpu
diff options
context:
space:
mode:
authornona@chromium.org <nona@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-17 07:20:31 +0000
committernona@chromium.org <nona@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-17 07:20:31 +0000
commitbc46215b29f90d698c49c054f535d4fba11b002d (patch)
tree837b643230523add436dc060e7ab3a51c63afa64 /gpu
parent21d4400d7c6ed369ef4c5199e34584fb1c28c2aa (diff)
downloadchromium_src-bc46215b29f90d698c49c054f535d4fba11b002d.zip
chromium_src-bc46215b29f90d698c49c054f535d4fba11b002d.tar.gz
chromium_src-bc46215b29f90d698c49c054f535d4fba11b002d.tar.bz2
Revert 240707 "Add some logic to identify the active GPU in mult..."
Breaks internal build bot. > Add some logic to identify the active GPU in multiple-gpu situation in Linux > > BUG=326783 > TEST=gpu_unittests > R=kbr@chromium.org > > Review URL: https://codereview.chromium.org/94103006 TBR=zmo@chromium.org Review URL: https://codereview.chromium.org/111403007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241179 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu')
-rw-r--r--gpu/config/gpu_info_collector.h7
-rw-r--r--gpu/config/gpu_info_collector_android.cc9
-rw-r--r--gpu/config/gpu_info_collector_mac.mm6
-rw-r--r--gpu/config/gpu_info_collector_ozone.cc8
-rw-r--r--gpu/config/gpu_info_collector_unittest.cc66
-rw-r--r--gpu/config/gpu_info_collector_win.cc8
-rw-r--r--gpu/config/gpu_info_collector_x11.cc51
7 files changed, 1 insertions, 154 deletions
diff --git a/gpu/config/gpu_info_collector.h b/gpu/config/gpu_info_collector.h
index d278aea..e89535a 100644
--- a/gpu/config/gpu_info_collector.h
+++ b/gpu/config/gpu_info_collector.h
@@ -53,13 +53,6 @@ GPU_EXPORT void MergeGPUInfo(GPUInfo* basic_gpu_info,
GPU_EXPORT void MergeGPUInfoGL(GPUInfo* basic_gpu_info,
const GPUInfo& context_gpu_info);
-// If multiple GPUs are detected, use GL_VENDOR string to determine which GPU
-// is currently active.
-// |gpu_info| is expected to be the merged GPUInfo after full info collection.
-// Upon return, |gpu_info->gpu| will contain the active GPU, assuming the
-// platform supports it. Return false if it's not supported.
-GPU_EXPORT bool DetermineActiveGPU(GPUInfo* gpu_info);
-
// Advanced Micro Devices has interesting configurations on laptops were
// there are two videocards that can alternatively a given process output.
enum AMDVideoCardType {
diff --git a/gpu/config/gpu_info_collector_android.cc b/gpu/config/gpu_info_collector_android.cc
index 035f474..79428a1 100644
--- a/gpu/config/gpu_info_collector_android.cc
+++ b/gpu/config/gpu_info_collector_android.cc
@@ -124,13 +124,4 @@ void MergeGPUInfo(GPUInfo* basic_gpu_info,
MergeGPUInfoGL(basic_gpu_info, context_gpu_info);
}
-bool DetermineActiveGPU(GPUInfo* gpu_info) {
- DCHECK(gpu_info);
- if (gpu_info->secondary_gpus.size() == 0)
- return true;
- // TODO(zmo): implement this when Android starts to support more
- // than one GPUs.
- return false;
-}
-
} // namespace gpu
diff --git a/gpu/config/gpu_info_collector_mac.mm b/gpu/config/gpu_info_collector_mac.mm
index 1f58323..c216439 100644
--- a/gpu/config/gpu_info_collector_mac.mm
+++ b/gpu/config/gpu_info_collector_mac.mm
@@ -217,10 +217,4 @@ void MergeGPUInfo(GPUInfo* basic_gpu_info,
MergeGPUInfoGL(basic_gpu_info, context_gpu_info);
}
-bool DetermineActiveGPU(GPUInfo* gpu_info) {
- DCHECK(gpu_info);
- // On mac, during info collection, we've already detected the active gpu.
- return true;
-}
-
} // namespace gpu
diff --git a/gpu/config/gpu_info_collector_ozone.cc b/gpu/config/gpu_info_collector_ozone.cc
index 5e28e8a..acef6ae 100644
--- a/gpu/config/gpu_info_collector_ozone.cc
+++ b/gpu/config/gpu_info_collector_ozone.cc
@@ -34,12 +34,4 @@ void MergeGPUInfo(GPUInfo* basic_gpu_info,
MergeGPUInfoGL(basic_gpu_info, context_gpu_info);
}
-bool DetermineActiveGPU(GPUInfo* gpu_info) {
- DCHECK(gpu_info);
- if (gpu_info->secondary_gpus.size() == 0)
- return true;
- // TODO(zmo): implement this.
- return false;
-}
-
} // namespace gpu_info_collector
diff --git a/gpu/config/gpu_info_collector_unittest.cc b/gpu/config/gpu_info_collector_unittest.cc
index 5607312..5e61ee2 100644
--- a/gpu/config/gpu_info_collector_unittest.cc
+++ b/gpu/config/gpu_info_collector_unittest.cc
@@ -182,71 +182,5 @@ TEST_F(GPUInfoCollectorTest, DISABLED_GLExtensionsGL) {
gpu_info.gl_extensions);
}
-#if defined(OS_LINUX)
-TEST(GPUInfoCollectorUtilTest, DetermineActiveGPU) {
- const uint32 kIntelVendorID = 0x8086;
- const uint32 kIntelDeviceID = 0x0046;
- GPUInfo::GPUDevice intel_gpu;
- intel_gpu.vendor_id = kIntelVendorID;
- intel_gpu.device_id = kIntelDeviceID;
-
- const uint32 kAMDVendorID = 0x1002;
- const uint32 kAMDDeviceID = 0x68c1;
- GPUInfo::GPUDevice amd_gpu;
- amd_gpu.vendor_id = kAMDVendorID;
- amd_gpu.device_id = kAMDDeviceID;
-
- // One GPU, do nothing.
- {
- GPUInfo gpu_info;
- gpu_info.gpu = amd_gpu;
- EXPECT_TRUE(DetermineActiveGPU(&gpu_info));
- }
-
- // Two GPUs, switched.
- {
- GPUInfo gpu_info;
- gpu_info.gpu = amd_gpu;
- gpu_info.secondary_gpus.push_back(intel_gpu);
- gpu_info.gl_vendor = "Intel Open Source Technology Center";
- EXPECT_TRUE(DetermineActiveGPU(&gpu_info));
- EXPECT_EQ(kIntelVendorID, gpu_info.gpu.vendor_id);
- EXPECT_EQ(kIntelDeviceID, gpu_info.gpu.device_id);
- EXPECT_EQ(kAMDVendorID, gpu_info.secondary_gpus[0].vendor_id);
- EXPECT_EQ(kAMDDeviceID, gpu_info.secondary_gpus[0].device_id);
- }
-
- // Two GPUs, no switch necessary.
- {
- GPUInfo gpu_info;
- gpu_info.gpu = intel_gpu;
- gpu_info.secondary_gpus.push_back(amd_gpu);
- gpu_info.gl_vendor = "Intel Open Source Technology Center";
- EXPECT_TRUE(DetermineActiveGPU(&gpu_info));
- EXPECT_EQ(kIntelVendorID, gpu_info.gpu.vendor_id);
- EXPECT_EQ(kIntelDeviceID, gpu_info.gpu.device_id);
- EXPECT_EQ(kAMDVendorID, gpu_info.secondary_gpus[0].vendor_id);
- EXPECT_EQ(kAMDDeviceID, gpu_info.secondary_gpus[0].device_id);
- }
-
- // Two GPUs, empty GL_VENDOR string.
- {
- GPUInfo gpu_info;
- gpu_info.gpu = intel_gpu;
- gpu_info.secondary_gpus.push_back(amd_gpu);
- EXPECT_FALSE(DetermineActiveGPU(&gpu_info));
- }
-
- // Two GPUs, unhandled GL_VENDOR string.
- {
- GPUInfo gpu_info;
- gpu_info.gpu = intel_gpu;
- gpu_info.secondary_gpus.push_back(amd_gpu);
- gpu_info.gl_vendor = "nouveau";
- EXPECT_FALSE(DetermineActiveGPU(&gpu_info));
- }
-}
-#endif
-
} // namespace gpu
diff --git a/gpu/config/gpu_info_collector_win.cc b/gpu/config/gpu_info_collector_win.cc
index 3b63296..6467262 100644
--- a/gpu/config/gpu_info_collector_win.cc
+++ b/gpu/config/gpu_info_collector_win.cc
@@ -650,12 +650,4 @@ void MergeGPUInfo(GPUInfo* basic_gpu_info,
basic_gpu_info->dx_diagnostics = context_gpu_info.dx_diagnostics;
}
-bool DetermineActiveGPU(GPUInfo* gpu_info) {
- DCHECK(gpu_info);
- if (gpu_info->secondary_gpus.size() == 0)
- return true;
- // TODO(zmo): implement this.
- return false;
-}
-
} // namespace gpu
diff --git a/gpu/config/gpu_info_collector_x11.cc b/gpu/config/gpu_info_collector_x11.cc
index 12fe80d..e0374fa 100644
--- a/gpu/config/gpu_info_collector_x11.cc
+++ b/gpu/config/gpu_info_collector_x11.cc
@@ -77,7 +77,7 @@ std::string CollectDriverVersionNVidia() {
}
int event_base = 0, error_base = 0;
if (!XNVCTRLQueryExtension(display, &event_base, &error_base)) {
- VLOG(1) << "NVCtrl extension does not exist.";
+ LOG(INFO) << "NVCtrl extension does not exist.";
return std::string();
}
int screen_count = ScreenCount(display);
@@ -162,26 +162,6 @@ bool CollectPCIVideoCardInfo(GPUInfo* gpu_info) {
return (primary_gpu_identified);
}
-// Find the first GPU in |secondary_gpus| list that matches |active_vendor|
-// and switch it to primary gpu.
-// Return false if we cannot find a match.
-bool FindAndSetActiveGPU(GPUInfo* gpu_info, uint32 active_vendor) {
- DCHECK(gpu_info);
- GPUInfo::GPUDevice* device = NULL;
- for (size_t ii = 0; ii < gpu_info->secondary_gpus.size(); ++ii) {
- if (gpu_info->secondary_gpus[ii].vendor_id == active_vendor) {
- device = &(gpu_info->secondary_gpus[ii]);
- break;
- }
- }
- if (device == NULL)
- return false;
- GPUInfo::GPUDevice temp = gpu_info->gpu;
- gpu_info->gpu = *device;
- *device = temp;
- return true;
-}
-
} // namespace anonymous
bool CollectContextGraphicsInfo(GPUInfo* gpu_info) {
@@ -291,33 +271,4 @@ void MergeGPUInfo(GPUInfo* basic_gpu_info,
MergeGPUInfoGL(basic_gpu_info, context_gpu_info);
}
-bool DetermineActiveGPU(GPUInfo* gpu_info) {
- DCHECK(gpu_info);
- if (gpu_info->secondary_gpus.size() == 0)
- return true;
- if (gpu_info->gl_vendor.empty())
- return false;
- uint32 active_vendor = 0;
- // For now we only handle Intel/NVIDIA/AMD.
- if (gpu_info->gl_vendor.find("Intel") != std::string::npos) {
- if (gpu_info->gpu.vendor_id == kVendorIDIntel)
- return true;
- active_vendor = kVendorIDIntel;
- }
- if (gpu_info->gl_vendor.find("NVIDIA") != std::string::npos) {
- if (gpu_info->gpu.vendor_id == kVendorIDNVidia)
- return true;
- active_vendor = kVendorIDNVidia;
- }
- if (gpu_info->gl_vendor.find("ATI") != std::string::npos ||
- gpu_info->gl_vendor.find("AMD") != std::string::npos) {
- if (gpu_info->gpu.vendor_id == kVendorIDAMD)
- return true;
- active_vendor = kVendorIDAMD;
- }
- if (active_vendor == 0)
- return false;
- return FindAndSetActiveGPU(gpu_info, active_vendor);
-}
-
} // namespace gpu