

Map-Reduce in JavaScript, working on client Browsers - arturventura
http://blog.0x82.com/2010/11/22/map-crowd-reduce

======
babs474
This kind of ties into a proof of concept I worked on a while ago.

An advantage of the native SETI-at-home clients is that they have access to
the gpu. But theoretically so does javascript via WebGL so I took a stab at
implementing matrix multiplication entirely on the GPU from within the
browser. I think it could be a pretty powerful idea if it were fleshed out a
bit more.

<http://learningwebgl.com/blog/?p=1828>

------
arfrank
There was something similar to this posted a few months ago,
<http://maprejuice.com/>. I believe it also used node.js and web workers in
order to do distributed map reduce operations.

~~~
Klonoar
Yeah, myself and two others built the same thing for Node Knockout
(maprejuice). In my opinion it's hardly an original concept at this point, but
still a very interesting one with an interesting problem set.

------
tlrobinson
I wonder what kinds of workloads this is actually useful for?

JavaScript performance has vastly improved in the last few years but it's
still relatively slow, as are most individual's network connections.

IIRC a bunch of people tried this approach on the Engine Yard SHA-1 hashing
contest, and were obliterated by those using CUDA, etc.

~~~
icey
I suppose its usefulness is closely related to the number of clients you could
use it with. Would it be useful on a mom & pop's website? Doubtful.

Something with a measurable fraction of Facebook's scale might be able to get
something useful out of it... assuming the users don't revolt when they
discover it.

------
cing
Similar to this? [http://www.igvita.com/2009/03/03/collaborative-map-reduce-
in...](http://www.igvita.com/2009/03/03/collaborative-map-reduce-in-the-
browser/)

------
wuster
Don't have time to verify this until the weekend, but if it works as
advertised, this is brilliant.

------
lowglow
Very cool proof of concept. The advances in web-front technologies are all so
very exciting.

------
rorrr
If you want to do some actual high-performance work, I'd look at Java applets.
Java runs around 5x faster than the same JS code (V8), and much much faster in
browsers like IE. Plus they have real multi-threading.

