Framebuffer discard should probably be disabled for NVIDIA, Linux, ChromeOS, Android |
||||
Issue descriptionEXT_framebuffer_discard should probably be disabled for modern NVIDIA devices. It probably does not have an effect in many cases. 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. This would come up when GPU rasterization would use NVPR and mixed samples. Due to branching and organizational complexities, determining the exact driver numbers that the fix ships in would be cumbersome. On windows, it was disabled in bug 570897 .
,
Apr 8 2016
My main concern is the perf regression on the platforms where it does have an effect, especially on Android.
,
Apr 8 2016
So it's already disabled on all of Windows and CrOS (looks like because of Mali somebody disabled it on all of CrOS), and on many Android drivers. Are you suggesting to disable it for all of NVIDIA also? Maybe there is also something else that's conservative and we could use to avoid the driver version based blacklist where we know the drivers are good (like Android releases, or OSes).
,
Apr 8 2016
Of course you'd know better if it's not worth it and the performance benefits are not interesting, which you original comment seems to suggest :) Then we can just filter by NVIDIA. On a related note: The 'disable_discard_framebuffer' blacklisting logic has become a bit unwieldy.
,
Apr 11 2016
It's only for NVIDIA, newer chips. The feature disable exists for Windows. If the rationale is correct, it should exist for all platforms for the similar HW. The code is in: https://codereview.chromium.org/1873763002/
,
Apr 14 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a5ef831af7c5f339a22dcefac50f9bdae8788c36 commit a5ef831af7c5f339a22dcefac50f9bdae8788c36 Author: kkinnunen <kkinnunen@nvidia.com> Date: Thu Apr 14 12:41:54 2016 gpu: Disable framebuffer discard on NVIDIA, Android, ChromeOS and Linux 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} [modify] https://crrev.com/a5ef831af7c5f339a22dcefac50f9bdae8788c36/gpu/config/gpu_driver_bug_list_json.cc
,
Apr 18 2016
,
May 4 2016
|
||||
►
Sign in to add a comment |
||||
Comment 1 by kkinnu...@nvidia.com
, Apr 8 2016