-
Notifications
You must be signed in to change notification settings - Fork 10
SIMD subgroup meeting on 2022-11-04 #102
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I totally forgot to create this issue amidst all the excitement around the in-person meeting, sorry :P |
I can log in and check for an open discussion. We can sync on feedback from in-person, though it would be good to have you in the meeting. |
The meeting was moved a week later |
@Maratyszcza can you edit issue title and description to say it is next week? |
Listing some ideas that floated at the in-person CG meeting for potential discussion tomorrow. @justinmichaud suggested that Relaxed SIMD should have explicit instructions for testing exactly which semantics is implemented by each Relaxed SIMD computational instruction. My original motivation for not exposing implementation testing instructions was to make it harder to write code that relies on architecture-specific behaviors. Justin expects that this will happen anyway, and having an explicit mechanism for testing for architecture-specific behaviors will simplify debugging if browsers get a bug report like "my Web app works in Chrome/Safari/Firefox, doesn't work in Safari/Firefox/Chrome". Many participants voiced the suggestion that deterministic semantics should be a normative part of the spec rather than sprinkled across multiple Pull Requests. Several folks, including @sunfishcode, strongly prefer Relaxed Multiply-Add to use FMA semantics in deterministic mode, even if comes at big performance cost on some devices today. Overall, the community would like to see a path forward where non-determinism would naturally go away in the long-term, as new hardware implements native instructions which match deterministic semantics. @titzer suggested that Relaxed SIMD should be a superset of native SIMD instruction sets, and provide WebAssembly equivalents for native instructions Relaxed SIMD instructions are lowered too. In this proposal, Relaxed SIMD would have e.g. an equivalent of the x86 PMADDUBSW instruction which computes 8 dot products of 2-element |
Filed #104 to provide some background (not strictly tied to what has been discussed at CG meeting). |
We came out of the CG meeting with several ideas/options that @Maratyszcza summarized above, in addition to that I think it would be useful to step back and what problems these ideas are solving. Parsing through the notes once more, some of the concerns raised and potential follow up that might be useful:
|
Next meeting at #109 . |
This is a joint meeting with flexible-vectors and any SIMD related presentations are also welcome, e.g. new architectures or toolchains, longer term discussion that don't fit into flexible-vectors or relaxed-simd.
The meeting will be on Friday, Oct 28 at 9:00AM - 10:00AM PDT/ 5:00PM - 6:00PM CET.
If this meeting doesn't already appear on your calendar, or you are a new attendee, please fill out this form to attend.
The text was updated successfully, but these errors were encountered: