Our vehicles are parked 95% of the time. Our laptops are not always in our laps. Even smartphones, which are now seen by many as vital, do not always spend time in our hands. Furthermore, more of our devices now go to sleep instead of turning off, and some like the Apple TV no longer turn off at all. What does this mean, and does it matter? Some programs such as CrashPlan take advantage of the idle time by performing tasks such as backups and virus scans. A more imaginative and useful route would be to donate a device’s unused processing power to take part in distributed computing.
Distributed computing is a process where people yield access to the computer processing power found within the computer processing unit (CPU) and/or graphics processing unit (GPU) within their devices to a third actor, who uses these distributed computers to complete larger tasks. This practice is already being used in a number of computers and supercomputers around the world. Right now, many scientists use “volunteer computing ” for tasks such as modeling protein folding, modeling the transmission of malaria, and enabling earthquake monitoring. Today many research projects get the processing power for free, but in the future people may expect payment in return. Luis Sarmenta of the MIT Computer Science and Artificial Intelligence Laboratory discusses what he calls “paid volunteer computing” and points out several issues to consider. Companies need to make sure there are no cheaters who falsely claim they are contributing processing power. Companies must also be vigilant against espionage, since someone who enters the network may try to gather information and sell it to a corporate competitor, leaving the network’s owner vulnerable to theft. Companies may have to encrypt their networks. There is also a risk to the contributor to the network. One’s device could be unknowingly added to an illicit network, such as a botnet that is used to send distributed denial-of-service (DDOS) attacks or spam e-mails. Finally, it is complicated how people should be paid considering the different kind of devices, how often they could contribute processing power, etc.
One example of a company that sells other users’ processing power is Peer Zone, which uses idle resources to test the performance of popular websites. They pay the people with the processing power on a per minute basis, regardless of the processing power of one’s computer, and limit the payment to $45/month. Paid volunteer computing has its growing pains. CPUsage states that it has a glut of people willing to sell their CPUs’ idle time and a shortage of companies interested in it. Some, like Slicify, closed down after attempting to use other peoples’ idle time to compete with cloud computing companies such as Amazon and Microsoft. Perhaps the growing pains are due to the fact that this is a new market. Ultimately, paid volunteer computing could compete with immobile, expensive data centers because the companies do not own the computers and do not need the capital to buy the processing power. Paid volunteer computing may have the advantage in being more flexible then a data center.
There is no reason why paid computing should be limited to computers. Stanford University’s Folding@home used the processing capacity of networked computers and PlayStation 3s to model protein folding to help researchers study diseases until 2012. While refrigerators are not known for having a number of processors, in 2014 a smart fridge sent spam as part of a botnet, suggesting that it has processing power to spare. As discussed in a previous blog, vehicles can also be added to a distributed computing network, since they are parked on average 95% of the time. Those who want to volunteer processing power must take care to leave electronic control units (ECUs) available for critical situations. While adding refrigerators and vehicles to distributed networks may seem unorthodox, they have plenty of computing power to spare!