Wasm64 and Multithreading

Yay, wasm64 support! And there was much rejoycing.

Until there wasn’t, because when you try, the choice is either Wasm64 OR Multithreading, and we need multithreading even more than we need >4Gb.

Is there any plan to support, err, both at once? I imagine in the majority of cases where people want >4Gb they’re also doing something that wants threads…

Is this related to Memory64, multithreading and the 128-bit atomics operations to combat the ABA problem · Issue #253 · WebAssembly/threads · GitHub?

Wasm64 threading is being worked on, and yes, it is related to atomics. Alternative solutions are being investigated. It is an important feature to get working, but there aren’t any timeframe estimates currently.

Thanks Brendan! I did hack together a singlethreaded wasm64 build. It’s very, err, hitchy but having “more than an iPhone XS” amounts of RAM is amazing :slight_smile:

As always, thanks to everybody at Unity pushing the whole web tech stack (threads, memory, webgpu, and being the drivers pushing the wider web performance ecosystem) forward.

Now if we can get iOS to let you use more than 1GB of memory, that would be nice! :slight_smile: