[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