Dart SIMD use case.
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Active
- Tech stack
- dart, wasm
- Domain
- compilers, performance
Research direction
Start with the issue text and the linked WebAssembly GC discussion to understand the Dart dart2wasm SIMD scan use case and the proposed multibyte array access behavior. No repository files or tests are named, and completion criteria are not defined; the issue would need a concrete proposal or acceptance criterion before implementation can begin.
Written by the indexing model from the issue text.
Description
Hello!
I just wanted to briefly share some use cases for this in the Dart world.
We are working on adding better SIMD support to the dart2wasm compiler in Dart.
One of the use cases we can't support right now is an efficient SIMD based scan.
To be able to efficiently scan through a byte stream (or a string to implement the memchr equivalent in Dart called indexOf) using SIMD we'd need to have the ability to reinterpret parts of the backing storage as appropriate types that allow us to cheaply treat a chunk of it as a SIMD type.
Here's some more Dart use cases from another perspective from @osa1 in https://github.com/WebAssembly/gc/issues/395#issuecomment-1630391803
An 8x unrolled SIMD based scan can achieve 120GB/s on a modern mac using NEON. It would be great if use cases like these could be opened up with this proposal. Experiments show that we are at least an order of magnitude away from being able to reach those numbers with wasm gc.
- Dominant language
- WebAssembly
- Stars
- 4
- Forks
- 1
- Avg merge
- 16h 35m
- Merged PRs (30d)
- 1
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from WebAssembly/multibyte-array-access
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 3/5 1-2 days Newbie friendliness 50/100
WebAssembly/multibyte-array-access#8 · 1 comment ·
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
WebAssembly/multibyte-array-access#4 · 4 comments ·
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
WebAssembly/multibyte-array-access#3 · 5 comments ·
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
All issues in WebAssembly/multibyte-array-access
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
JakeChampion/lang#10213 ·
-
enhancement good first issue needs testing
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
bradcypert/plum#58 ·
-
flang:fir-hlfir
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
llvm/llvm-project#225935 ·
-
area:cards hand-tail ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
fil-donadoni/tolaria#4446 ·