Harvesting & Reusing Idle Computer Cycles
Hustler writes "More on the University of Texas grid project's mission to integrate numerous, diverse resources into a comprehensive campus cyber-infrastructure for research and education. This article examines the idea of harvesting unused cycles from compute resources to provide this aggregate power for compute-intensive work."
There are several non-commercial distributed computing systems, so the GridMP system isn't anything particularly new or groundbreaking. However, in companies that run very resource intensive applications and simulations, such a distributed system that uses unused CPU cycles has some serious applications.
However, the most critical aspect of this type of system is not just that the application in question is just multithreaded, but that it be multithreaded based on the GridMP APIs. To do such would require either a significant rewrite of existing code or a rewrite of it from scratch. This is not a minor undertaking, by any means.
If the performance of the application and every cycle counts, then that investment is definitely worth it.
Jesus saved me from my past. He can save you as well.
"wasted compute cycles" aren't free. I would assert they're not even "wasted".
No doubt in the era of idle loops and HLT instructions unused processor capacity does yield benefits. However from the perspective of a large organization (such as a large corporation, or a large university), it is waste if they have thousands of very powerful CPUs distributed throughout their organization, yet they have to spend millions on mainframes to perform computational work.
"Compute" as an adjective is just weird. Keep your creepy clustering terms to yourself kthx
http://gridengine.sunsource.net/
Free and opensource, runs on almost all operating systems.
Could we really do this stunt? I see no reason why we could not. Dassault has done it.
Dassault, a French company, designed and tested its new Falcon 7X entirely in a virtual reality. The company did not create a physical prototype. Rather, the first build is destined for sale to the customer.
First, figure the (Watts fully loaded) - (watts at idle) and call it something like margin watts. Then, figure out how much a kilowatt hour of electricity costs in your area. Say 7 cents.
Since a watt is a watt, and for rough purposes you can either choose to ignore or treat power supply inefficiency as a constant, you can get an idea of what it costs.
Chip: 2.2Ghz Athlon 64
Idle: 117 watts
Max: 143 watts
difference: 25 watts
Kilowatt hour / 25 watts = 40 hours.
It takes 40 hours for a loaded chip to use a kilowatt hour more electricity than an idle chip. Over a year, this will cost you $15.34 in electricity. Since your power supply isn't 100 percent efficient, it'll be more. Say 20 bucks a year.
Fascism trolls keeping me up every night. When I starts a preachin', he HITS ME WITH HIS REICH!
How much energy does it take to harvest the energy?
How many cycles does it take to harvest the idle cycles?
Is the balance positive or negative?
Distributing computing processes to third parties is much more inefficient. The workload has to be distributed in smaller packets, it has to be confirmed & rechecked more often, and the same workload has to be done multiple times due to not everyone runs a dedicated machine or always has 'spare cpu cycles.'
I would agree that distributing the work load is cheaper in the long run, especially with an increase in the amount of participants, but it is not a 1 to 1 cycle comparison, and therefore it is not necessarily 'taht much cheaper', 'more efficient', or 'more prudent' for a research facility to rely on others for computing cycles.
Heterogeneous Hardware - This is a major issue.
The kinds of things that interest high-end computing geeks tend to be extremely sensitive to round-off error.
If you're trying to get accurate results by spreading calculations around among disparate machines that might deploy e.g. IEEE 64-bit doubles, IEEE 96-bit doubles [Intel & AMD], IEEE 128-bit doubles [Sparc], or various hardware cheats [MMX, SSE, 3dNow, Altivec], then trying to make any sense of the results will drive you absolutely bonkers.
PS: A good place to start in understanding the uselessness of e.g. 64-bit doubles is Professor Kahan's site at UC-Berkeley; you might want to glance at the following PDF files:
I saw some some posters from the fraunhofer institute in germany on the subject of power, with a graph of specint/watt.
0. all modern cores switch off idle things (like the FPU) and have done for some time.
1. those opteron cores have best in class performance
2. intel centrino cores, like the i740, have about double the specint/watt figure. That means they do their computation twice as efficiently.
In a datacentre, power and air conditioning costs are major operational expenses. If we can move to lower power cores there -and have adaptive aircon that cranks back the cooling when the system is idle, the power savings would be significant. of course, putting the datacentre somewhere cooler with cheap non-fossil-fueled electicity (like British Columbia) is also a good choice.
Your choices are:
Note that the solution in this article is obviously not free due to electricity and other support costs, but it is undoubtedly cheaper than buying your own cluster and then paying for electricity and the support costs.
There is increased wear and tear associated with running a computer. However - in university environments, this may not matter. At the university where I did my undergrad work, and now at the current one where I work, all general student-use computers in labs are replaced on a three-year basis. At any one time, there is a huge glut of just-barely-not-newest computers to be had. So shortening the lifespan of these machines really won't matter. The lab boxes are on most of the time anyway, and will be rotated out before they break.
When I'm doing pedestrian things - read anything but games, videos, or high-end graphics work - my graphics card is underutilized.
Wouldn't it be cool to utilize it to its full potential?
Even better, when the screen saver would normally in, just turn over the graphics card completely to the background process.
Imagine Seti@home running on your GPU.
PS: Ditto some other processors that aren't being used to their full capacity.
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.