WebAssembly / WebAssembly/threads
OpenMP
Nobody has claimed this yet.
- Dominant language
- WebAssembly
- Stars
- 767
- Forks
- 54
- PR merge metrics
- No merged PRs in 30d
Description
Sorry if this is the wrong place to raise this, am very new to WebAssembly. So please forgive my ignorance. 😅
WebAssembly is very exciting for those of us in scientific domains as it opens up the web to programs that were bound to a desktop and only (if ever) connected to the web through running some sort of web server. Not to mention the possibilities WebAssembly offers in terms of sharing and using these often difficult to produce environments is intriguing. Though it does raise some questions about threading, SIMD instructions, GPU support, etc. that seem to be pretty well discussed in various locations.
Though haven't really seen much discussion of OpenMP support. So wanted to raise this as an interesting use case. It is very common for scientists to take advantage of OpenMP as it offers a mode of parallelism that is really easy to understand, requires little work to implement in a program, and is widely supported. So it is quite common to see this show up in C/C++ codes in the scientific domain. Even extensions to the Python language like Cython make using OpenMP quite easy. Similarly Julia exposes it with ParallelAccelerator. Using C/C++ extensions to R one can also easily leverage OpenMP.
Given the popularity of OpenMP, was wondering if any thought had been given to OpenMP support in the threading spec. Particularly in regards to C/C++ code that is compiled to WebAssembly. Thanks in advance for your thoughts. 😄
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.
Research direction
No repository file or test is named. Start by reading the threading specification and the issue's discussion of C/C++ programs compiled to WebAssembly, then determine whether OpenMP belongs in the proposal. Done would require a scoped direction or design decision rather than a localized patch.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, cpp, wasm
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100