Plura Processing’s in ur Browser, stealing yr cycles
So, I apologize upfront for the title, but I couldn’t resist. Plura Processing came to my attention through my participation in the Cloud Computing Form as someone with a genuinely interesting idea – harvesting browser time spent on websites to process compute cycles on behalf of third-parties.
Put another way: you browse to a website, you view the content, make a comment, play the game, and in the background, a Java applet is secretly using your spare computing horsepower to answer questions for corporate fatcats around the world, and the website you’re visiting is getting a cut of the revenue.
It’s an interesting idea – certainly, I think content providers are going to be looking for new ways to monetize visitors if the advertising market softens. And I’m sure the idea of access to an unlimited network of computer power on-demand has appeal to all sorts of organizations who occasionally need large amounts of computing horsepower. But there’s a few problems I see with this model.
One is that the whole nature of the Internet today is that people tend to stay on individual pages for a very short amount of time. If anything, people tend to treat the Internet as a transactional medium – have a thought, do a search, read the page, go back to what you were doing before. This means that for websites that are interested in generating revenue from this model, they need to be very concerned with the amount of time people spent on a given page. To their credit, Plura discusses exactly this subject in their website, focusing on long-pageview models, like online video.
Another issue is the constant “data movement” problem. All of the distributed computing models, even the ones where the compute farm exists within the datacenter, face challenges with how to move data to where it needs to be processed. These problems only get worse when you move from internal datacenters that you control and can manage bandwidth, to random people’s computers with varying bandwidth and horsepower capacity. So the ideal profile for these workloads is one where the data set is small, and the computational requirements are high. This lends itself well to things like monte carlo simultations, where a fixed data set has an exponentially greater quantity of simulations and randomization, perfect for a single data transfer followed by long compute times. However, many workloads today involve large sets of data (just look at the public adulation being given to Hadoop/MapReduce – distilling large sets of data down to results) – this is miserable for Plura’s model. After all, you can’t begin processing until you have the data, and if it takes 80% of the time spent on a webpage to download the data, that doesn’t leave a lot of time to get work done.
The last note is whether users will be aware and/or offended that their computer is being used for someone else’s gain. It’s interesting – Plura has two models – one where the applet runs visibly, with a badge identifying itself, and one where it runs silently on a page. Clearly they’re aware that there are some organizations that will clearly state that they’re taking people’s compute time , probably non-profits. But for commercial sites where the app might be hidden, how will people react that their compute time is being “stolen” for someone’s commercial benefit. I suspect that some people won’t care, others will care, but not enough to make a stink about it, and some will mightily object. In addition, what will they be working on? Potentially, someone’s computer could be leveraged to process cycles on a subject that is objectionable to the computer’s owner. How would someone feel about that?
We’ll just have to see if Plura’s model and reach continue to grow over time.