Issue metadata
Sign in to add a comment
|
Browser freezes for 10-20 seconds when linking a shader and measures performance incorrectly
Reported by
sergey....@gmail.com,
Nov 16
|
||||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0 Steps to reproduce the problem: 1. Clear browser caches 2. Open console (F12) 3. Load this page: https://sergeyext.github.io/sergeyext/webgl_shader_link_freeze.html What is the expected behavior? This issue is closely related to an issue I reported here: https://bugs.chromium.org/p/angleproject/issues/detail?id=2967 Expected behavior is to freeze only one tab, and then print correct freezing (shader linking) time to console. Firefox exposes expected behavior during long shader linking. 1) It's possible to switch tabs and use another tab, while the affected tab is freezed. 2) It reports actual shader linking time (10 to 20 seconds on my machine) What went wrong? 1) The whole browser gets freezed while shader is linking. It's impossible to switch tabs, open a new tab or enter something to address bar. 2) After freezing the repro script reports link time approx 0.0001 seconds, but actually the browser was frozen for 10 seconds or more. Did this work before? N/A Chrome version: 4bbeebac88fdc09c97265e47c205868bbd190497-refs/branch-heads/3538@{#1077} Channel: stable OS Version: 10 Flash Version: More information is in this issue: https://bugs.chromium.org/p/angleproject/issues/detail?id=2967
,
Nov 16
FWIW, Chrome 63 and older load this page instantaneously or so it seems. Bisect info: 513943 (good) - 513955 (bad) https://chromium.googlesource.com/chromium/src/+log/f1120196..27b89a1265?pretty=fuller There are several ANGLE-related commits: 2ef23e2d72e7811a607f53ea12e672c3287375bd Fix writing uniform block maps to HLSL output via r513950 and r513949 d255123c63c331bc32402eeeb3ecd18d6b18e97d Store shader interface variables as per query spec via r513949 c67323a9de6415d19344c69fc376c91288f2e124 Squash State dirty bits to below 64 1d7be50acf6f02defd767e1c41b4d238fcba7bd5 Vulkan: Upgrade RGB8 textures to RGBA8 7b62cf97d12bc23b4beff1085af677b074f2785b Refactor TextureFormatMap to store an array Landed in 64.0.3258.0
,
Nov 18
,
Nov 22
Please provide a copy of your chrome://gpu
,
Nov 22
CC'ing ANGLE folks and Jie who was working on parallel shader compile.
,
Nov 22
,
Nov 23
Per my test in ANGLE for the shaders (https://chromium-review.googlesource.com/c/angle/angle/+/1349069), it's not reproducible on my machines. On my NVIDIA GeForce GTX 1060 desktop: [----------] 1 test from UniformBufferTest [ RUN ] UniformBufferTest.LargeArray/ES3_D3D11 [ OK ] UniformBufferTest.LargeArray/ES3_D3D11 (1134 ms) and Intel(R) UHD Graphics 630: [----------] 1 test from UniformBufferTest [ RUN ] UniformBufferTest.LargeArray/ES3_D3D11 [ OK ] UniformBufferTest.LargeArray/ES3_D3D11 (582 ms) [----------] 1 test from UniformBufferTest (582 ms total) Probably it's only specific to some drivers or OS versions. BTW, you can try to compile/link in parallel using the KHR_parallel_shader_compile extension -- https://www.khronos.org/registry/webgl/extensions/KHR_parallel_shader_compile/. Firstly you need to turn on the enable-webgl-draft-extensions in chrome.
,
Nov 23
,
Nov 23
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Nov 27
Linking to the related ANGLE bug. This looks like a problem in either the shader translator or Microsoft's fxc compiler and should be fixed there. The fact that the browser freezes happens because GPU execution in Chrome is serialized on a single thread in the GPU process. Using the KHR_parallel_shader_compile extension would avoid this, but shouldn't be necessary; this shader is trivial and shouldn't take this long to compile. Something is going wrong.
,
Nov 27
Note also that https://chromium-review.googlesource.com/1349069 contains the wrong version of the shader; changing it to use an array of structs inside the uniform block should reproduce the problem.
,
Nov 28
At this point the problem is known and is being investigated under issue angleproject:2967. Duplicating into that one.
,
Nov 28
,
Dec 6
The NextAction date has arrived: 2018-12-06 |
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 Deleted