Bug 246388
Summary: | Max Uniform Block Size (UBO) is too small | ||
---|---|---|---|
Product: | WebKit | Reporter: | munrocket <munsocket> |
Component: | WebGL | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | dino, geofflang, gman, jonahr, karlcow, kbr, kkinnunen, webkit-bug-importer |
Priority: | P2 | Keywords: | BrowserCompat, InRadar |
Version: | Safari Technology Preview | ||
Hardware: | Other | ||
OS: | Unspecified |
munrocket
I am tried to implement compute shader with UBO and faced with a problem that WebGL2 Max Uniform Block Size in Safari is much smaller than in Firefox/Chrome.
16384 instead of 65536.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/101322218>
Kenneth Russell
Do you have a test case for your problem?
Gregg (gman@, cc'd) raised several of these limits in ANGLE's Metal backend, but I'm not sure they made it into Safari yet. Have you tried Safari Technology Preview?
If you try Chrome Canary, go to about:flags, set "Choose ANGLE graphics backend" to "Metal" and restart, is the UBO size larger?
munrocket
Interesting. The same issue exist in Chrome Canary (with Metal backend) and Safari Technology Preview. Test case is visible on https://webglreport.com where Max Uniform Block Size is smaller in 4 times.
munrocket
In WebKit UBO size in fact almost unlimited. Looks like this bug easy to fix.
Test case:
https://jsgist.org/?src=cb64%2CeJyNVo9P4zYU_lfeskmkLCQpB6etB2jAwe0k0CF-aJso4kzitGaO3dlO2o71f9-znYQU7k4nQHWfnz9_3_tlngJBShqMgvMlPOoPTJsgCjQ1homJDkZPqygoGKe4vO1cmcjpIp6akqNvJoWhwqB5z1oOxgJgb0pJ7la4LqkhkE2JQtT9cVCZYuuXcQBJu2-Y4fTg5ugTnCxIOeN0L_Emh5R0UHsPMl-2hzIiaqIP9pJm0Zh1ptjMgFYZ3jQ1ZqZHSZLlIn7UOeWsVrGgJhGzMjHzCUfrb7vxME6THHUnu_HCmbeKitu9cYD4HrHh0jBAUlZpsIpehCTTei0i1h-e7NmSqAkTI0jf2W-ypqrgcj6CKctzKtC4GgsvxfvPWW6mIximaT13R6aUTabGW6bOgpxnnCxH8MBl9reFeE3ocZ0PpwbO_7o_P_zz3sZ7H3bSX9--gyTB5TlZwI1ghVQlHFlEuGL_Ukhg-HYs7A_CaAO1Rt_PP6IAzaSAN2kKVFs6SEVWJsSTxNidfUgHwATUNNsGciE1s2ak6QJQIZLdwKwY4uTUkuUYJiZCuxr4MKBK64BgfQRrn_D71oK7iLUTdi4RpHEaASZ24Lwxtp_dxV5C8TUJM0Uz5mxTDPYMMEXEOIRWR0vX2qomWG6juqRa8qoj2G46CKiuWUlfHLvCjqB5K9MKgOqUUZ7f_vT0nKPVnVewHrcdKJgg_Fhyqb4VPE-tRrnhdryJITtVZHIspcrjxRK2-qwHmOkSz_dM8SLqe8RLH03oXd6GPt6FnyHe3dQWocY1XudED2wa7N9g8wvqtoatvjZDtkJ9H0SY4ghTIieKlB9FISN4qIqCKrt2vkUlMpd_JpgJnWiLhdU8QZQ_6MOHs21wxb8wdqPpr33IZVaV2BHxPxVVyyvKaWakCseB9xgHXuiEo683xYh47JHQbU4fJny7dWMFhD9MeBd0wqky4YZzGoKQoKvZTCpD841BoxVAUY3dFVqEhjNOx2oGH86uzlrRTU12AUA2bmplihJDL543Qhup2xpDVui7lntc6dYn7IHEzfrVzcQYxR4q41vBd4q32ZA9PTfgCL_kxJAR3G4NI7B_b_yHW95FIKryWJYzKTDGegTbsHIFDL0Erms56uynSpaHSpGldqIaAl6TO4Bkvbc-FPlhx9l5f6VYXkltWtAJbUGb0af7sYralPa6AFU3JeFGdNQWiJ_Pd1FzwNY-TnuX71f3Y-X3guzG9-uYNITcKO6SvEZuHPgZ0haihZOcxlxOwg70ReisuZPaOT0LdT06AkHn4NIQPjfr5s4gxn8FeDj0ZbyO3Kf7hWT06WADjMUcHyg5j0men9RYJmf4AFNBVbjhO2MjAgr7B12f2HNdv7dGz9ox8KZjl4tr-d4_jfYBC9tp0lyY05pl9IItKL-0D1XXLjWjc9umIb4c-PuNJHcaeoTwtVWhaRjZHHJKFMYhPv509uny_ujm9PQEPz5ew392-_3JxfXvPWtbIt9Xjb64jH2b0zR1JdcVmUPIFZk_95RLx3o7rNMngpVYcR3_To6LjaI4JrU5dE7ojm9IScPmTAfmZzB-a8EG74LV3ep_oUeBOQ%3D%3D
munrocket
Ok, looks like UBO performance is x10 slower than texture packing for big arrays. Maybe I should close this issue and open a new one about performance.