Contact emails
[email protected]

Explainer
https://github.com/gpuweb/gpuweb/issues/4973


Specification
https://www.w3.org/TR/WGSL/#language_extension-uniform_buffer_standard_layout


Summary
Functionality added to the WebGPU spec after its first shipment in a browser. 
Uniform buffers declared in WGSL shaders are no longer required to have 16-byte 
alignment on array elements, or to pad nested structure offsets to a multiple 
of 16 bytes.


Blink component
Blink>WebGPU


Web Feature ID
webgpu


Motivation
This feature simplifies the use of uniform buffers in WGSL shaders by unifying 
their constraints with those of storage buffers. Without this, developers are 
required to align all array elements to 16 bytes and pad nested structures to 
achieve a 16-byte offset.


Initial public proposal
https://github.com/gpuweb/gpuweb/pull/5347


TAG review
No information provided


TAG review status
Pending


Risks




Interoperability and Compatibility
This feature has been approved in W3C GPU for the Web WG meetings including 
participants from Safari and Firefox. Minutes from W3C meeting where the 
decision to accept the proposal was finalized: 
https://github.com/gpuweb/gpuweb/wiki/GPU-Web-2025%E2%80%9010%E2%80%9021-WGSL#language-feature-for-relaxing-uniform-address-space-layout-5347

Gecko: No signal 
(https://github.com/mozilla/standards-positions/issues/1205#issuecomment-3312534193)

WebKit: Closed Without a Position 
(https://github.com/WebKit/standards-positions/issues/294#issuecomment-1877411933)

Web developers: No signals

Other signals:


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it 
has potentially high risk for Android WebView-based applications?
None



Debuggability
None


Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, 
ChromeOS, Android, and Android WebView)?
Yes
All platforms will eventually have support. Will immediately be available on 
Android, Android WebView, ChromeOS, Mac, and Windows, since those platforms 
already support WebGPU. Linux is planned to have WebGPU support in the future, 
so this feature will become available when WebGPU does.


Is this feature fully tested by web-platform-tests?
Yes
WebGPU/WGSL have a conformance test suite (https://github.com/gpuweb/cts) that 
is regularly pulled into Chromium and part of the testing of Dawn/Tint in 
Chromium. While the CTS can be embedded in WPT, the WebGPU team opted to keep 
it separate in Chromium testing to use a customized harness for robustness and 
performance. CTS coverage for this feature was added here: 
https://github.com/gpuweb/cts/pull/4484


Flag name on about://flags
Enable Unsafe WebGPU


Finch feature name
UnsafeWGSLFeatures


Rollout plan
Will ship enabled for all users


Requires code in //chrome?
False


Tracking bug
https://crbug.com/452662924


Estimated milestones


Shipping on desktop 144

DevTrial on desktop 143

Shipping on Android 144

DevTrial on Android 143

Shipping on WebView 144




Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop 
issues. Please list open issues (eg links to known github issues in the project 
for the feature specification) whose resolution may introduce web 
compat/interop risk (eg, changing to naming or structure of the API in a 
non-backward-compatible way).
No information provided


Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/6680245553987584?gate=6542931179732992


This intent message was generated by Chrome Platform Status.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/68ffe676.050a0220.56be2.00b7.GAE%40google.com.

Reply via email to