Using 175% of Processor?

Discussion in 'General Mac Discussion' started by Horrortaxi, Apr 10, 2004.

  1. Horrortaxi macrumors 68020


    Jul 6, 2003
    Los Angeles
    I'm currently encoding a DVD in iDVD. For fun I opened Activity Monitor to see how much power this was taking. Somehow it's using 175% of the processor's power to do its work. Back in the old days you used to only be able to have 100% of anything so I'm a little confused. Is this because I have dual processors? I'd actually have 200% available?
  2. bousozoku Moderator emeritus

    Jun 25, 2002
    Gone but not forgotten.
    No, it's an estimate and when the computer is extremely busy, it's an unstable estimate. It might catch one process at 75 percent and before it gets information on the next, that might drop to 0 percent and the next process gets the 75 percent. Suddenly, those two processes have 150 percent of the CPU time.
  3. Rower_CPU Moderator emeritus


    Oct 5, 2001
    San Diego, CA
    I dunno, bous' - DP aware apps can take advantage of both processors for a single process. RC5's process (dnetc) will run consistently at 180+% CPU with minimal background tasks.

    iDVD probably does likewise.
  4. Rincewind42 macrumors 6502a


    Mar 3, 2003
    Orlando, FL
    That's it exactly, the system counts each CPU as being up to 100% in use, so if you have a single app that is multi threaded it can use more than 100% of a CPU (because it is using more than one). If you had a theoretical Quad machine, you could use up to 400% CPU.

    And of course, Windows does it the other way (so there using all of a single CPU is 50%)
  5. TDT macrumors member

    Apr 4, 2004
    University of Iowa - Iowa
    This comes really apparent when you lookat a CPU graph of both CPUs working together. I've run some multi-tasking applications, and bous is correct in that many times it will go up on one for a bit, then drop to 0 while the other goes. This is assuming no other tasks are being done. This happens on dual processor dedicated applications too. The reason to remember is that if you have two threads that compute something that, in the end, goes to another thread (lets take the example of computing a fractal) then if one thread finishes early then it waits on the other thread to finish.

    This is all program based. If I created 2 loops, and threaded them and set them to be while(true) { }, this will take 200% of the CPU space by literally ramping both of the CPUs to 100%. This is how CPU tests work.

    All depends on the programming, though.

Share This Page