-
Notifications
You must be signed in to change notification settings - Fork 305
WGSL 2021 05 25 Minutes
Jeff Gilbert edited this page Jun 1, 2021
·
1 revision
🪑 Chair: Jeff Gilbert
⌨️ Scribe:
🗺 Location: meet.google.com
🌐 Timezone: America/Los_Angeles
⌚ Time: Tuesday 11am-noon
Specification: https://webgpu.dev/wgsl
Meeting Issues: Marked Issues
Open Issues: WGSL Issues
Note: These are the minutes taken in real-time. The official minutes can be found on the WebGPU wiki.
If you didn't receive a meet.google.com invitation and plan on participating, please send Dan Sinclair a Google Apps enabled address and he'll add you.
WIP, the list of all the people invited to the meeting. In bold, the people that have been seen in the meeting:
- Apple
- Myles C. Maxfield
- Robin Morisset
- Google
- Alan Baker
- Ben Clayton
- Brandon Jones
- Corentin Wallez
- David Neto
- Ekaterina Ignasheva
- Kai Ninomiya
- James Darpinian
- James Price
- Rahul Garg
- Ryan Harrison
- Sarah Mashayekhi
- Intel
- Narifumi Iwamoto
- Yunchao He
- Microsoft
- Damyan Pepper
- Greg Roth
- Michael Dougherty
- Rafael Cintron
- Tex Riddell
- Mozilla
- Dzmitry Malyshau
- Jeff Gilbert
- Jim Blandy
- Kings Distributed Systems
- Daniel Desjardins
- Hamada Gasmallah
- Wes Garland
- Dominic Cerisano
- Eduardo H.P. Souza
- Joshua Groves
- Kris & Paul Leathers
- Lukasz Pasek
- Matijs Toonen
- Mehmet Oguz Derin
- Pelle Johnsen
- Timo de Kort
- Tyler Larson
- Wednesday 10am-10:50am
- https://meet.google.com/xrp-hpck-vmy
- Everyone welcome
- Mass calendar invite will have been sent out
- If you still need an invite, add your email here:
- Survey soon!
- (wgsl: access mode is no longer an attribute)
- (Had one round of review, and addressed.)
- (Can we land this?)
- DM: When do we specify access quals for pointers. Spec has it for function. I will follow up offline.
- (Editorial: “mipmap level” -> “mip level”)
- JG: Seems fine.
- AB: the hard case was overridable. This is non-overridable. Simple case. Since we don’t have constexpr, this is at most substitution.
- DM:When we do get constexpr there is more work.
- Discussion about relation to spir-v spec constant expressions
- RC: In compile HLSL you can’t override workgroup size.
- TR: HLSL can do some limited amount of const expr by “static const int”. Believe you can use that for num_groups.
- DM: Sounds like that fits well.
- JG: So seems implementable.
- AB: We already adopted the harder version. (overridable).
- JG: But overridable can’t be const-expressions. They’re just identifiers.
- DN: module-scope constants can only be literals right now.
- Agree to land
- Undefined in spir-v and in glsl for negatives
- DN: Please mak the polyfill without control flow. (use select)
- DN:DM: What about overflows generally? INT_MIN / -1? (overflows signed integer)
- JG to file an issue for that
- DM to try making a spir-v polyfill
- (probably fine. One day for people to double-check)
- MM to talk with Metal team about proposed solution (i64 all the time)
- (nothing new)
- DM: Uses semantics of “orginating variable”. Which is WSGL-centric. Have to consider the host-side. Consider the resource which is the source for the binding.
- MM: But the point is you won’t see data from another resource. Use case is you might multiplex multiple user contexts into a single graphics context? Is that the point.
- DM: Think they want to limit it as much as possible.
- RC: For each access you want to know which buffer is being accessed.
- MM: What happens on Vulkan with bindless.
- Metal guarantees no access reaches outside the process.
- Same for Windows
-
Discussion about separating WebGPU context per process
- Has high cost. E.g. sharing with image sources, compositing.
- Firefox shared compositing resources across processes
- RC: Reaching within process but outside resources can land on a page you own (safe), or not own (which leads to crash). That’s “safe” but non-portable and painful to deal with.
- Next meeting: 2021-06-01 (like normal)
- https://github.com/gpuweb/gpuweb/issues/1777 wgsl: compute shaders should have a workgroup_size attribute
-
https://github.com/gpuweb/gpuweb/issues/1431 allow array size that is a pipeline-overrideable constant
- Use case: sizing workgroup storage .Tied to workgroup size, which is overridable