Earn Money by Selling Your CPU Idle Time
Do you ever let your computer sleep while you're not using it? If you need some extra cash without doing anything, you can simply sell your CPU idle time either for distributed computing (DC) commercial projects or donate it for volunteer projects.
In a typical home computer, 80-90% of the time the CPU is idle and not doing anything. Think about all the billions of home desktops or laptop computers running with that much idle CPU processing time. What a waste!!
Distributed computing projects rely on harnessing a huge amount of processing power spread around the world.
What Is Distributed Computing?
Distributed computing is a branch of computer science that utilizes multiple computers connected via a network, interacting with each other to achieve a common computing goal. Here's a very clear definition from IBM's website:
A distributed computer system consists of multiple software components that are on multiple computers, but run as a single system. The computers that are in a distributed system can be physically close together and connected by a local network, or they can be geographically distant and connected by a wide area network. A distributed system can consist of any number of possible configurations, such as mainframes, personal computers, workstations, minicomputers, and so on. The goal of distributed computing is to make such a network work as a single computer.
The key requirement for distributed computing is that the computational job be divided into smaller independent chunks that can be sent over the network to be processed at various nodes. It is important to note that DC is not same as P2P networks, where the nodes/clients directly talk to each other.
Example of a DC project
What Is CPU Idle Time?
A typical computer is not doing computational work all the time and hence the CPU will not always be busy. When there is nothing to do, the CPU goes into an idle state. In most advanced computers, the CPU is put into the appropriate sleep mode to save power.
Here is a must-read article for technically inclined folks:
On most systems, the processor is idle much of the time. We can't always be running CPU-intensive work like kernel builds, video transcoding, weather modeling, or yum. When there is nothing left to do, the processor will go into the idle state to wait until it is needed again. Once upon a time, on many systems, the "idle state" was literally a thread running at the lowest possible priority which would execute an infinite loop until the system found something better to do. Killing the idle process was a good way to panic a VAX/VMS machine, which had no clue of how to do anything without a task dedicated to that purpose.
Running a busy-wait loop requires power; contemporary concerns have led us to the conclusion that expending large amounts of power toward the accomplishment of nothing is rarely a good idea. So CPU designers have developed ways for the processor to go into a lower-power state when there is nothing for it to do. Typically, when put into this state, the CPU will stop clocks and power down part or all of its circuitry until the next interrupt arrives. That results in the production of far more nothing per watt than busy-waiting.
In fact, most CPUs have multiple ways of doing nothing more efficiently. These idle modes, which go by names like "C states," vary in the amount of power saved, but also in the amount of ancillary information which may be lost and the amount of time required to get back into a fully-functional mode.
How Can You Sell Idle Time?
So how can you make money by selling the idle time? There are many companies that promise to pay you for harnessing the idle time of your CPU. The pay is not significant but should serve as additional income if you decide to go ahead. This article will provide you with some of these options.
A startup, CPUsage, wants to pay folks so it can harness their idle compute time to sell to corporations. CEO and Co-Founder Jeff Martens estimates that an average user donating four hours of compute time every day could score about $10 a month. The company recently acknowledged that they have more processing power than demand, indicating a lack of customers who are harnessing the processing power. Here is what they promise if you become a partner:
Computer owners are paid for their unused compute power. Our point system accounts for compute time and computer performance. Points are redeemable each month for cash, and soon, other valuable items like gift cards and online services. The more compute power you contribute to the grid, the more you’ll earn.
The company seems to have a lot of potential and could become the next big thing if they balance their supply-demand cycle. This should be on your watch-list.
GOMEZPeer is another distributed computing software platform that allows you to sell your idle time for some cash. Here is what the website claims:
Gomez PEER is a secure java application that runs in the background of your PC and leverages your system’s idle resources (such as unused processing power, RAM, and bandwidth) to test the performance of many of the world’s most popular websites.
Users who download and run the Gomez PEER application make up a network of more than 150,000 individuals who, together, are helping to make the Internet a faster, more reliable tool for everyone.
You can check out the pay-rates here. The only mode of payment is PayPal. The one problem that I have seen with GOMEZPeer is that it takes months for a normal user to activate the account. Of-course no payment is made without the account being active.
The activation depends on your computer configuration and their requirements. Thus they can continue to utilize the processing power of many users by not activating the majority of them and paying very few active users. Also the pay is not very high. The maximum you can earn in any month is $45, which is extremely difficult to reach. The only advantage is that, once you install the software, you can simply forget it and no action is required from the user. The software will not interfere with your normal work.
If you are feeling generous, instead of trying to make money off your idle CPU time, you can donate that extra processing power for the greater good of humanity. Here are some projects (called volunteer distributed computing) that need your idle processing power:
- Einstein@home (Astrophysics): This is a voluntary DC project hosted by the University of Wisconsin and the Max Planck Institute. Einstein@Home searches through data from the LIGO detectors for evidence of continuous gravitational-wave sources, which are expected for instance from rapidly spinning non-axisymmetric neutron stars. Einstein@Home also searches radio telescope data from the Arecibo Observatory for radio pulsars.
- Distributed.net (Crypotgraphy): Currently, distributed.net is working on RC5-72 (breaking RC5 with a 72-bit key), OGR-27 and also has recently completed the OGR-25 and OGR-26 projects, which searched for 25- and 26-mark optimal Golomb rulers. The RC5-72 project is currently on pace to exhaust the keyspace in just over 200 years, although the project will end whenever the required key is found.
- Docking@home (Molecular biology): This models protein-ligand docking using the CHARMM program. The ultimate aim is the development of new pharmaceutical drugs.
- Folding@home (Molecular biology): This is a distributed computing project for disease research that simulates protein folding, computational drug design, and other types of molecular dynamics.
- MoneyBee (Finance): This is a distributed computing project in the fields of economics, finance and stock markets that generates stock forecasts by application of artificial intelligence with the aid of artificial neural networks.
There are close to 80 active projects listed on the wiki page, across various domains, for which you can donate computer processing power.
If the wiki page with 80 projects sounds intimidating, the best way to start is to set up BOINC.
Setting Up BOINC
BOINC (Berkeley Open Infrastructure for Network Computing) is the best way to start on DC projects. It is a free, open-source software which works under Windows (XP/2K/2003/NT/98/ME), Linux / FreeBSD / Unix and Mac. It is simple to install on various platforms and once ready, you can subscribe to various projects for donating your computing power.
What Are the Risks Associated With Distributed Computing?
You may be excited to learn about all these projects and the fact that you can earn money via the world's laziest mechanism, but hold on. You need to keep the following risks in mind before signing up:
- Any DC project will run some code on your processor which is unknown to you. So it is important to get at least some information before you subscribe to any project
- Most of the companies running for-profit DC projects allow their customers's code to run on your machine, which can cause security issues and possible misuse of data residing on your computer
- In most modern computers, an idle CPU actually consumes very little power, but running DC projects will reduce your CPU idle time and increase your electricity bills.
- It is also important to be certain—especially for volunteer projects—that the data or results generated out of usage of your computational resource will be put in public domain and not be used for any commercial purposes. Otherwise it will totally defeat the purpose of voluntary donating your CPU power.
Here is the unique case of David McOwen, which raises another kind of risk while using DC software on work computers.
Earnings vs. Electricity Bill
A constant issue with for-profit DC projects is the fact that even if you are not actively investing any effort or money, you are keeping your computer online, which consumes electricity. An idle CPU will consume far less power than an active CPU and the whole concept of DC projects will keep your CPU active most of the time.
So any monetary benefits arising out of such projects should at least offset electricity costs, and hopefully make some profit for you. It is really difficult to calculate such costs, but CPUsage has shown one such calculation on their blog.
It needs to be kept in mind that the cost of electricity will vary across the world and this calculation can change depending on how much you can earn from such programs.
I feel that earning via DC projects may not be really a bad thing if you have some excess CPU power to spare. But don't get your hopes up of making loads of money from it.
Also do not try to keep your computer online for an extended period just to give the DC software chance to run overtime. Install the software and then use your computer normally. Donating idle time to a DC cause is also a good use of computational power.
What do you think?