Intel® oneAPI Threading Building Blocks
Ask questions and share information about adding parallelism to your applications when using this threading library.

Porting tbb to Emscripten


I'm looking to port TBB to Emscripten, now that it seems there's enough pthreads support to make it feasible.  I've made a first attempt with my own machine config, and while the compile is successful (without the unit tests, which are a different kettle of fish to run) I have issues with undefined externals in my test application.

Specifically, __RML_open_factory, __RML_close_factory, scalable*free and malloc, etc., so it looks like it may be related to linking in the rml and tbbmalloc libraries correctly or possibly with emscripten/clang's interpretation of "weak symbols".

My question is twofold:

  1. Does anyone here have any experience with this port attempt that could point me in the right direction?
  2. I'd like to eventually contribute this port back to tbb - are there any resources anywhere (besides the in-code comments) that can help me set up the emscripten inc file correctly, i.e. correct names, correct interpretation of "machine" and "platform" and "os" (which is a bit fuzzy around emscripten)?  I'm not a novice developer, it's just that this is quite far out of my wheelhouse and I'd like to start off on the right foot to speed up later reviews.
0 Kudos
0 Replies