Skip to content

Commit

Permalink
gpu: Disable framebuffer discard on NVIDIA, Android, ChromeOS and Linux
Browse files Browse the repository at this point in the history
Disable framebuffer discard on NVIDIA devices. "Kepler" architecture is
non-tiling for the most part, and does not benefit greatly from
framebuffer discard.

There also was a bug in framebuffer discard that would lock up the
system, if it was done on framebuffer with mixed samples (N:M, N != M,
N=color samples, M=stencil samples). The bug was fixed ~year ago.

Disable it for "Kepler" based devices by filtering with GLES 3.0 and
later versions. Devices with chips of earlier architectures will
probably not get GLES 3.0.

Add so many entries:
1) Disable on Linux GL devices (imitate disabling on desktop Windows
   rule)
2) Disable on Linux GLES 3.0 devices
3) Disable on ChromeOS GLES 3.0 devices
4) Disable on Android GLES 3.0 devices

BUG=601753
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.win:win_optional_gpu_tests_rel

Review URL: https://codereview.chromium.org/1873763002

Cr-Commit-Position: refs/heads/master@{#387294}
  • Loading branch information
kkinnunen authored and Commit bot committed Apr 14, 2016
1 parent 8737f74 commit a5ef831
Showing 1 changed file with 68 additions and 1 deletion.
69 changes: 68 additions & 1 deletion gpu/config/gpu_driver_bug_list_json.cc
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ const char kGpuDriverBugListJson[] = LONG_STRING_CONST(
{
"name": "gpu driver bug list",
// Please update the version number whenever you change this file.
"version": "8.61",
"version": "8.62",
"entries": [
{
"id": 1,
Expand Down Expand Up @@ -1912,6 +1912,73 @@ LONG_STRING_CONST(
"features": [
"disable_overlay_ca_layers"
]
},
{
"id": 159,
"cr_bugs": [570897],
"description": "Framebuffer discarding can hurt performance on non-tilers",
"os": {
"type": "linux"
},
"vendor_id": "0x10de",
"gl_vendor": "NVIDIA.*",
"gl_type": "gl",
"features": [
"disable_discard_framebuffer"
]
},
{
"id": 160,
"cr_bugs": [601753],
"description": "Framebuffer discarding not useful on NVIDIA Kepler architecture and later",
"os": {
"type": "linux"
},
"vendor_id": "0x10de",
"gl_vendor": "NVIDIA.*",
"gl_type": "gles",
"gl_version": {
"op": ">=",
"value": "3.0"
},
"features": [
"disable_discard_framebuffer"
]
},
{
"id": 161,
"cr_bugs": [601753],
"description": "Framebuffer discarding not useful on NVIDIA Kepler architecture and later",
"os": {
"type": "chromeos"
},
"vendor_id": "0x10de",
"gl_vendor": "NVIDIA.*",
"gl_type": "gles",
"gl_version": {
"op": ">=",
"value": "3.0"
},
"features": [
"disable_discard_framebuffer"
]
},
{
"id": 162,
"cr_bugs": [601753],
"description": "Framebuffer discarding not useful on NVIDIA Kepler architecture and later",
"os": {
"type": "android"
},
"gl_vendor": "NVIDIA.*",
"gl_type": "gles",
"gl_version": {
"op": ">=",
"value": "3.0"
},
"features": [
"disable_discard_framebuffer"
]
}
]
}
Expand Down

0 comments on commit a5ef831

Please sign in to comment.