Shared memory multicore computation in JavaScript

My phone has four cores, my laptop has eight, and my workstation has sixteen, but my scripts can only easily use one core at a time. We need to give JavaScript access to the full power of the machine, if web apps are to remain as capable as native apps. Workers communicating with events and marshaled data are safe, but slow and awkward; Parallel JS is also safe, but again slow and awkward. The power remains locked away. So what are we to do? Suppose we sacrifice a little safety for a lot of performance: We give JavaScript workers access to shared memory, and let them truly share data and communicate through the shared memory. A low-level framework is all we need initially; libraries can provide data-parallel abstractions, task queues, synchronization, and similar. Such a framework is available in Firefox Nightly now, and I will present it and demo some things we can do with it.
Length: 30:44
Views 24 Likes: 0
Recorded on 2015-05-21 at Web Rebels
Look for other videos at Web Rebels.
Tweet this video