[Webkit-unassigned] [Bug 251514] New: KHR_parallel_shader_compile does not allow for shader compilation without blocking

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Feb 1 07:30:36 PST 2023


https://bugs.webkit.org/show_bug.cgi?id=251514

            Bug ID: 251514
           Summary: KHR_parallel_shader_compile does not allow for shader
                    compilation without blocking
           Product: WebKit
           Version: Safari 16
          Hardware: Mac (Apple Silicon)
                OS: macOS 13
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebGL
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: mvaligursky at snap.com
                CC: dino at apple.com, kbr at google.com, kkinnunen at apple.com

- longer write up is here: https://github.com/mvaligursky/webgl-parallel_shader_compile

- repro: https://htmlpreview.github.io/?https://github.com/mvaligursky/webgl-parallel_shader_compile/blob/main/index.html

Basically, I have a small example that compiles 50 larger shaders, while waiting for the results using the KHR_parallel_shader_compile extension, which is reported as supported.

The problem is that even though this extension seems to work (meaning it does not block), the linkShader step is where all shader compilation seems to take place, and that is a blocking call, blocking the main thread till the shader is compiled. The idea behind the extension is that both compile and link steps are fast, only passing data to the browser, which then compiles the shaders in the background without blocking, and allowing non-blocking query of the results.

The goal here is to compile many shaders, which the main WebGL thread is not blocked at all (the triangle should smoothly rotate).

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20230201/777f1c20/attachment.htm>


More information about the webkit-unassigned mailing list