MapRejuice Is SETI@Home on Steroids
Millions of Web surfers have spare computer cycles--why not use browsers to tap them?
Christopher Mims 09/03/2010
- 12 Comments
Unless a flash ad in one of your open browser tabs has gone rogue, it's likely you've got a few spare processor cycles available on the PC you're using to read this.
And if someone were to appropriate just a few of them -- too few for you to notice -- then you and all the millions of other web surfers out there could be harnessed together like some kind of gigantic insectoid computing hive mind.
The result would be one of the world's most powerful supercomputers.
![]() |
That's the dream, anyway, of a project called MapRejuice. It's MapReduce - the algorithm invented at Google that powers more or less all the massively parallel processing on which the web's biggest businesses rely - but implemented in javascript. And it runs in the background of any webpage on which it's installed.
You could be running it right now without even knowing it.
Using the spare cycles of the world's internet-connected PCs is nothing new - SETI@Home has been doing just that in service of parsing radio signals from outer space since the late 90's. There are also dozens of projects that use the BOINC system on which SETI@Home runs, in order to serve scientists who need cheap access to supercomputer-scale computing power to work on problems ranging from cryptography to protein folding.
But MapRejuice doesn't require special client software, which means pitching in on giant computational problems could be as simple as leaving the appropriate browser window open.
![]() |
Right now MapRejuice, which remains primarily a proof of concept, isn't doing that much. The graph on its homepage reveals, in real time, that it's doing about 300 jobs per minute right now.
Its ultimate capacity? Well, how many spare cycles do all the world's internet browsers have?
If you've got a site that serves users who wouldn't mind contributing a little processing power to the project, you can grab the line of code you'll need to drop into your site's HTML here. Or, if you've got a gigantic problem in need of a MapReduce cluster of nontrivial scale, sign up your project here. And if you just think it's a cool idea, you can vote for it (it's an entry in the node.js contest) here.





rsanchez1
213 Comments
Maybe Good
This is a good idea and it remains to be seen if it can beat SETI@home. On the plus side, it doesn't require you to download and install software like you have to do with SETI. All that is required is a web developer to put the lines of code in their web pages to get a similar effect.
The downside I see to it is that most people don't spend too long on a single web page. SETI runs as a screensaver making use of the time when someone steps away from a computer. This is the optimum operation mode for MapRejuice as well, so web developers would need to ask visitors to the website to please leave the browser window open.
I read somewhere that the average user spends only 30 seconds on a webpage before moving on, so for this technology to be more useful it would have to be very widespread to cover a large portion of the user's browsing time. It's the same as asking web developers to load javascript libraries (jquery, prototype, etc.) off CDN instead of their own server to save on load time, but many developers still don't do it.
Reply
ryanmcgrath
2 Comments
Re: Maybe Good
You're right about this. We believe it can still be useful - look at how much time people waste on Farmville, for instance.
Reply
david.carew
1 Comment
Re: Maybe Good
Is anyone bothered by an ethical/moral dimension of server-side hiding of this cpu power theft? For SETI@home, I approve and download a cpu parasite, for MapRejuice simply touching particular URL's downloads this parasite without my knowledge and consent. If I own the computer and pay for the power, shouldn't I know of an approve of what uses my computer power is put to?
Reply
jhuckestein
4 Comments
Re: Maybe Good
One way to solve that is to give users a toolbar to interrupt or stop the calculation. I doubt many users will do that if it helps finance the site they are currently enjoying.
Reply
colinnwn
88 Comments
Re: Maybe Good
It is a concern. Unfortunately all the flash ads and bloated javascript of dubious merit on many pages also robs CPU cycles.
The power increase is so negligible, it isn't worth consideration.
Personally, I'd rather sites dump flash ads for static ones, pare down their javascript, and do something worthwhile with my CPU cycles like this.
It would be nice if they provided a disable button out of courtesy. Otherwise I can set my browser to disable running javascript, and the problem would be solved.
Reply