Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Harvesting & Reusing Idle Computer Cycles

Posted by Hemos on Mon Jul 04, 2005 11:27 AM
from the making-good-use-of-time-and-resources dept.
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."
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • electricity (Score:5, Informative)

    by TedCheshireAcad (311748) <ted AT fc DOT rit DOT edu> on Monday July 04 2005, @11:32AM (#12980079) Homepage
    Does anyone realize that running a CPU at 100% takes more electricity than running a CPU at 10%?

    "wasted compute cycles" aren't free. I would assert they're not even "wasted".
    • Re:electricity (Score:3, Informative)

      by Anonymous Coward
      The point is that they're not being used, and that they can be used for research. From the point of view of the researchers, who need these cycles, they are wasted.
    • Re:electricity (Score:5, Insightful)

      by TERdON (862570) on Monday July 04 2005, @11:37AM (#12980110) Homepage
      Yeah, but it still draws a lot less letting a some computers burn some cycles, than you would have to use if you built a shiny, new, cluster. And you don't have to pay for the hardware either, because you already have it...
    • Re:electricity (Score:5, Interesting)

      by ergo98 (9391) on Monday July 04 2005, @11:40AM (#12980123) Homepage Journal
      "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.
      • Re:electricity (Score:3, Informative)

        by AtrN (87501) *
        Typically large organizations spend millions on mainframes to do I/O not compute and trying to move those types of things to PC clusters doesn't work without (a) adequate network infrastructure and (b) a distributed I/O system that scales. Some tasks can move, e.g. the obvious example is Google but they have rather unique constraints that make it possible, i.e. trivially parallelizable, no need to guarantee total correctness and a willingness to expose details of the distribution to applications (ref. Goo
    • by G4from128k (686170) on Monday July 04 2005, @11:42AM (#12980134)
      Does anyone realize that running a CPU at 100% takes more electricity than running a CPU at 10%?

      This is a very insightful post, but has two crucial counterarguments
      1. Does anyone realize the cost of buying extra computers to handle peak computing loads?
      2. Does anyone realize the cost of idle high-tech, high-paid labor while they wait for something to run?
      The proper decision would balance these three (and other factors) in defining a portfolio of computing assets that can cost-effectively handle both baseline and peak computing loads. Idle CPUs aren't free, but then neither are idle people or surplus (turned-off) machines.
      • "The proper decision would balance these three (and other factors) in defining a portfolio of computing assets that can cost-effectively handle both baseline and peak computing loads."

        You're probably right, but oh what a beautiful line of marketing-speak... If you happen to work in management or sales somewhere, write this baby down!
      • by bcrowell (177657) on Monday July 04 2005, @03:36PM (#12981225) Homepage
        There are costs that fall on the person who's donating the cycles, and costs that fall on the person who's getting the benefit of them. Unless both people are in the same organization, operating under the same budget, it's not just a question of minimizing the total cost. In the typical situation, the cost to the donor needs to be almost zero, otherwise the donor isn't going to do it. Even in a university environment, one department may have a separate budget from another department. Or electricity may be provided from the campus without a budget charge to the departments, but other costs, like paying sysadmins, may be specific to the department.

        Personally, I ran the SETI@home client and the Golomb ruler client for a while, but stopped because of a variety of factors:

        1. It makes my configuration more complicated, and any time I buy a new computer or do a fresh install, it's one more chore to take care of.
        2. I ran SETI@home for a while at work (on my own desktop hardware I brought from home, hooked into the network at the school where I teach), but I got scared when I heard stories about people getting fired for that kind of thing at other institutions. The network admins at my school are very uptight about this kind of thing, and don't have the same ethic of openness and sharing that most academics have.
        3. If I run it at home, I'm paying for the extra electricity.
        4. Most of the clients are closed source. I'm very reluctant to run closed-source software on any machine I maintain. You might say that the people who wrote the clients are trustworthy, well-known academics, not malicious Russian gangsters, but in my experience, most academics are actually pretty piss-poor, fly-by-night programmers. What if there's a security hole? Sure, the client described in TFA is supposed to be sandboxed, but how sure can I be that the sandboxing is really secure? I'm not normally particularly paranoid about security, but the rational approach to security is to weigh costs and benefits, and here the benefits to me are zero.

        I think if grid computing is ever going to take off, it needs to become a capitalist enterprise. If someone would pay me a few bucks a day for my spare cycles, and the client was open-source, and there was close to zero hassle, I'd gladly do it. Remember, one of the good things about a free market is that it tends to be an efficient way to allocate resources.

    • Re:electricity (Score:5, Insightful)

      by hotdiggitydawg (881316) on Monday July 04 2005, @11:45AM (#12980158)
      That's a very valid point, we should not assume that this usage comes at no cost to the environment. However, the cost of building and running a separate CPU dedicated to the same purpose is even higher - twice the hardware infrastructure (motherboards, cases, power supplies, what else? monitors, gfx cards, etc.), twice the number of cycles wasted loading software infrastructure (OS, drivers, frameworks eg. Java/Mono). Add to that the fact that hardware is not easily recycled and the "green" part of me suggests that cycle-sharing is a better idea than separate boxes.

      The next question is - who pays for the electricity then? University departments are notorious for sqabbling over who picks up the tab for a shared resource - and that's not even considering the wider inclusion of home users...
    • Re:electricity (Score:5, Insightful)

      by antispam_ben (591349) on Monday July 04 2005, @11:47AM (#12980170) Journal
      Does anyone realize that running a CPU at 100% takes more electricity than running a CPU at 10%?

      Yes, I do, the same for RAM being accessed and for a hard disk drive when it's seeking. But this is insignificant compared to the overhead of the power supply, fans, hard disk drive spindle motors, other circuitry that runs continuously, and dare I mention all those fancy-dancy computer case lights that are popular now.

      The incremental cost of these otherwise-unused cycles is so low that they can be considered free.

      So someone prove me wrong, what's the electricity cost of running a CPU at full cycles for a year vs. running at typical load? What's the cost of the lowered processor life due to running at a higher temperature. Chip makers will tell you this is a real cost, but practically, the machine is likely to be replaced with the next generation before the processor has a heat-related problem.

      Regardless, the cost is MUCH lower, in both electricity and capital, than buying other machines specifically to do the work assigned to these 'free cycles'.
      • Wrong (Score:5, Insightful)

        by imsabbel (611519) on Monday July 04 2005, @11:51AM (#12980189)
        What you are saying was perfectly correct even 3 years or so ago.

        But case in point: My Athlon64 computer doubles its wallplug powerdraw (including everything:PSU, Mainboard, HD, ect) at 100% load compared to idle desktop (ok, cool%quite helps pushing idle power down).

        The cpu IS the biggest chunck besides some high-end GPUs (and even those need MUCH less power when idle), and modern cpus need 3-4 times as much power under full load compared to idle.
        • Re:Wrong (Score:5, Funny)

          by big tex (15917) <torsionality AT gmail DOT com> on Monday July 04 2005, @12:54PM (#12980529)
          Using the Lap-Burn-O-Meter (TM) as a gauge of overall power consumption with my Powerbook G4, I can definitely say that higher cpu cycle activities (encoding 1hr AAC files, for instance) increase power usage.

          I could probably do something fancier by monitoring power draw with it unplugged, but my balls would be fried before I could tabulate the accurate data.
        • by steve_l (109732) on Monday July 04 2005, @12:54PM (#12980530) Homepage
          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.
        • Re:Wrong (Score:3, Interesting)

          by kesuki (321456)
          What you are saying was perfectly correct even 3 years or so ago.
          Hrm no.
          no need to repeat myself [slashdot.org]

          Running cpus at full load has made a huge difference in the cost of operation since the early pentium days. His point is that the cost of the 'electricity' is less than the cost of buying/powering new hardware specifically designed to do the work. Remember the electrical cost of the systems that are idle doesn't go away. those systems are on, anyways. Computer lab access is generally 24 hours a day, so th
      • by ergo98 (9391) on Monday July 04 2005, @11:55AM (#12980222) Homepage Journal
        http://www.tomshardware.com/cpu/20050509/cual_core _athlon-19.html [tomshardware.com]

        60-100W difference between idle and full power consumption. That is not an insignificant amount of power.
        • by Xandu (99419) * <matt AT truch DOT net> on Monday July 04 2005, @02:11PM (#12980887) Homepage Journal
          But it isn't that expensive. Let's call it 100W extra. 24 hours in a day gives us 2.4 kWh per day. For a year, call it 876 kWh. Approximate cost of electricity (in Texas) is about 10 cents per kilowatt-hour. That's $87.50 per year. Let's assume that you can extract half of the computer's horse-power for your cluster (the rest is lost in overhead of the cluster software etc, and of course, whatever the actual user of the PC does, which is often just word processing, email, and surfing the web). For an extra ~$175 per year you get the equivelant of another computer.

          If you wanted to get that computing power in a stand alone system, you'd not only have to purchase the PC (up front capital), but you'd have to pay more for electricity. From the reference link, only about 30% of a computer's power is used by the CPU, the rest is doing nothin'. The computers referenced, at full bore use 185W (best case). That's $162 per year at my 10 cent per kilowatt hour quote. Cheaper, sure, but by the cost of a computer? Not even close.

          Of course, there are other (hidden) costs involved in both methods, of which I'm not including in my (overly?) simplified model. And I'll just brush under the rug the fact that this kinda assumes that the average secretary has a top of the line system to surf the web with.
          • Err, not precisely. Intel's Pentium M [tomshardware.com] can create a system that draws 132 watts [tomshardware.com] at maximum CPU load, and runs nearly as fast.

            I've been buying AMD for about five years, but I think my next system will be a Pentium M. Just as soon as they're a bit cheaper...

            --grendel drago
      • 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 kilo
        • Re:electricity (Score:3, Informative)

          by Jeff DeMaagd (2015)
          My questions are in relation to the public distributed computing projects.

          Who pays for that extra electricity? What if the program was poorly written and destabilizes the computer?

          Few to none of the distributed computing projects don't factor this in. It's a nice way of cost-shifting, I think.

          I think it is a good way for an organization to make better use of their computers though, I really don't want any part of it.
      • Re:electricity (Score:5, Insightful)

        by hazem (472289) on Monday July 04 2005, @12:52PM (#12980513) Journal
        What all of you working from the electricity cost issue are missing is that at most universities, money for capital is different than money for operations. Capital money is hard to get. An increase in your operations cost just kind of get ignored if they're not too big.

        This has political ramifications.

        The goal: get a great, powerful, cluster of compute power.

        You can't go to the administration and say, "We need to spend $150k on a compute cluster". The answer will be "we don't have one now, and everything's just fine. No."

        So, you, being resourceful, implement this campus-wide cluster system that taps spare resources. Power bills go up a bit - nobody cares.

        Now, a couple years later, lots of projects are using the cluster. But the thing isn't working well because the power's not there during normal peak usage.

        At his point you go the administration, "we're losing tuition-paying students, and several grants are at risk because our compute cluster is not powerful enough. We need to spend $250k on a new compute cluster.

        And THAT is how you manipulate your operations budget to augment your capital budget.
        • You forgot the bit where you sell the cluster, and then lease it back from the company you sold it to - that way it comes out of the monthly current budget, and not the capital account!
    • by kf6auf (719514) on Monday July 04 2005, @01:26PM (#12980675)

      Your choices are:

      1. Use distributed computing to use all of the computer cycles that you already have.
      2. Buy new rackmount computers which will cost additional money up front for the hardware and then they have their electricity and cooling costs.
      3. Spend absolutely no money and get no more computing power.

      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.

    • Re:electricity (Score:3, Interesting)

      by arivanov (12034)
      Besides wasting more electricity you also drastically increase the speed at which the system deteriorates:
      • On a cheap white box systems without thermally controlled fans the power supply fan is usually driven of non-stabilized voltage prior to it being fed into the 12V circuit. This voltage is higher when consumption is higher and the fan runs at higher revs and dies faster. The more power the system eats the quicker the fans dies. Result - dead computer and possible fire hazard.
      • On more expensive "branded
        • Re:Reused??? (Score:3, Informative)

          by codeguy007 (179016)
          Now say that we get about 3.4 GHz worth of cycles each second (that's what AMD tells you)

          You should have used your mod points and not made a fool of yourself.

          An Athlon64 3400+ does not run at 3.4GHz but 2.2GHz. Thus you're whole calculation of computer cycles is wrong. 3400+ is a PR rating comparing the performance of the Athlon64 to a Pentium4 of 3.4GHz.
          • Re:Reused??? (Score:3, Informative)

            by ZosX (517789)
            Who's the fool now? The 3400 rating is actually based upon the performance of a 1ghz Thunderbird IIRC. So a 2000 would be roughly the equivavelent of a 2ghz Thunderbird, NOT a 2ghz Pentium 4, even though the processor is actually running at 1.6ghz.

            But don't take it from me. From the horses mouth:

            Section 2 The Model number

            The model number is fairly straight forward the numeric code of the Core ID will give you the model number. In the case of the newer Athlon XP's it will be the PR rating of the CPU. Fo
                • Re:Reused??? (Score:3, Insightful)

                  by codeguy007 (179016)
                  So what makes the wikipedia the be all and end all of information? A collection of user contributed information. I would hardly use it as proof in an argument.

                  Suffice to say however AMD calculates it's PR rating really doesn't change the fact that it's to provide a comparison between Athlons and P4. I can guarrantee you if intel released a P4 processor that changed that correlation, AMD would change their PR rating on new processor to match it. Of course now that Intel itself is going to a PR rating of so
  • by Mattygfunk1 (596840) on Monday July 04 2005, @11:34AM (#12980085) Homepage
    I think it's great as long as they're careful not to impede on the user working. Done badly these applications get annoying if they are too pushy about beginning their processing before a reasonable user timeout.

    Google's desktop search is one example where the timing and recovery back to the user is really done well.
    __
    Laugh daily funny adult videos [laughdaily.com]

  • 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.
  • Sure about that? (Score:4, Insightful)

    by brwski (622056) on Monday July 04 2005, @11:35AM (#12980097)

    REusing idle cycles? Really?

  • Spambots (Score:3, Funny)

    by HermanAB (661181) on Monday July 04 2005, @11:35AM (#12980099)
    are harvesting spare cycles all the time. I don't think there are much cycles left over anymore!
  • by Anonymous Coward on Monday July 04 2005, @11:40AM (#12980129)
    "Compute" as an adjective is just weird. Keep your creepy clustering terms to yourself kthx
  • GridEngine (Score:3, Interesting)

    by Anonymous Coward on Monday July 04 2005, @11:45AM (#12980156)
    http://gridengine.sunsource.net/ [sunsource.net]

    Free and opensource, runs on almost all operating systems.

  • by Krankheit (830769) on Monday July 04 2005, @11:49AM (#12980183)
    I thought that was what spyware was for? When you are not using your computer, and while you are using your computer too, let your computer send out e-mail and perform security audits on other Microsoft Windows computers! In exchange, you will get free, unlimited access to special money saving offers for products from many reputable companies, such as Pfizer.
  • by reporter (666905) on Monday July 04 2005, @11:53AM (#12980197) Homepage
    Let's do something really interesting with this grid technology. Instead of participating in SETI, let's use this grid to design the first GNU jet fighter (GJF). Our target performance would be the Phantom F-4J, modified with a gattling cannon. We could design and test the GJF entirely in cyberspace. The design would be freely available to any foreign country.

    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 [economist.com]. The company did not create a physical prototype. Rather, the first build is destined for sale to the customer.

    • by DigiShaman (671371) on Monday July 04 2005, @12:45PM (#12980469) Homepage
      Ya, let's countries such as China and N. Korea have such access to free engineering. After all, we want oppressive regimes to have as much power over their own citizens. I mean, when was the last time YOU could fly your own jet? Such gaps between non-democratic governments and it's citizens make much-needed revolutions that much harder to achive.
  • by mi (197448) <mi+slashdot@aldan.algebra.com> on Monday July 04 2005, @11:59AM (#12980244) Homepage
    It is almost a 'meme' -- when people start on projects like this, they tend to think, off-the-shelf software (free and otherwise) is not for them and they need to write their own...

    PVM [ornl.gov] offers both the spec and the implementation, MPI [anl.gov] offers a newer spec with several solid implementations. But no, NIH-syndrom [wikipedia.org] prevails and another piece of half-baked software is born.

    Where I work, the monstrosity uses Java RMI to pass the input data and computation results around -- encapsulated in XML, no less...

    It is very hard to fight -- I did a comparision implementing the same task in PVM and in our own software. Depending on the weight of the individual computation being distributed, PVM was from 10 to 300% faster and used 5 times less bandwidth. Upper management saw the white paper...

    Guess, what we continue to develop and push to our clients?

    • MPI is great. I used to work at a shop that had a lot of Sun workstations. After doing some reading I managed to recode some of our more processor intensive software to run distributed across the workstation pool (automatically reniced to lowest priority) using MPI. As long as you managed to get a large enough workstation pool (which wasn't that hard, given how many people had one sitting on their desk) the distributed version was every bit as fast as standard version running on high performance servers.
  • by mc6809e (214243) on Monday July 04 2005, @12:07PM (#12980280)
    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?

  • by imstanny (722685) on Monday July 04 2005, @12:09PM (#12980292)
    Everyone is saying that the cost of making a machine to do the same process that can be distributed to a computer is overlooking a very crucial point.

    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.

  • by Moderation abuser (184013) on Monday July 04 2005, @01:20PM (#12980645)
    Seriously. We're talking about literally a 30 year old idea. By now it should really be built into every OS sold. The default configuration for every machine put on a network should link it into the existing network queueing system that you all have running at your sites.

  • Wisconsin Condor (Score:4, Insightful)

    by mrm677 (456727) on Monday July 04 2005, @02:20PM (#12980921)
    The Wisconsin Condor Project [wisc.edu] has been harvesting unused compute cycles for over a decade. The software is free to use and deploy, and is used by various corporations including Western Digital and others.

  • by Jugalator (259273) on Monday July 04 2005, @03:09PM (#12981126) Journal
    Hmm, where [berkeley.edu] have [worldcommunitygrid.org] I [google.com] heard [stanford.edu] about this before again?
    Exciting to read a paper on this fanastic new idea.
  • by davidwr (791652) on Monday July 04 2005, @03:17PM (#12981154) Homepage Journal
    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.
    • Wow, why didn't we do that... oh wait, we did, years ago in fact. (everyone else thought of it too)

      GPU don't have real math... yet. So instead of Folding@home you get "tossed on the bed"@home. Which is unfortunately useless.

      Stay tuned tho. :)
  • I am a sinner (Score:3, Interesting)

    by exp(pi*sqrt(163)) (613870) on Monday July 04 2005, @04:16PM (#12981375) Journal
    So a while back our company shut down. For the last couple of months a bunch of us worked 3 days a week on making a graceful shutdown. During that period we had about 1500 2-3GHz CPUs sitting idle. I had about 2 days spare to work on writing code, and even on the days I was working there wasn't much to do. At the start of the shutdown period I thought "Wow! A few teraflops of power available for my own personal use for two months. And the spare time to utilize it. I could write the most amazing stuff." And what did I do? Nothing. I am a sinner. I have some excuses: I had to look for a new job 'n' all that. Even so, I could have done something.

    So what should I have done with that CPU power?

    • 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 ro