Processor Allocation Max of 50% Per Program

Discussion in 'Windows 64bit' started by Guest, Jul 26, 2005.

  1. Guest

    Guest Guest

    I have a dual processor AMD Opteron, 4 gig of memory and a 2-200Gig SATA Raid
    0 hard drive setup. I have noticed that the operating system will not allow
    any one program to have more than 50% of the processor time. I have several
    large computer models and when they are running, they use both processors
    with veach thread getting ariable usage percentage, but the total as reported
    by Task Manager/Performance is always pegged at 50%. Not 49% and not 51%.

    When I am running multiple programs I can get the total processor usage to
    go over 50%, but for any one program that can get there, something is
    stopping it from getting more than 50% of the available processor time. I
    have noticed this with several high end computer model as well as some code
    that I developed myself. I am running Windows XP 32, would Windows XP 64
    eliminate this limitation?

    To reduce runtime I would like to be able to allocate 100% of both
    processors if the program needs it.
     
    Guest, Jul 26, 2005
    #1
    1. Advertisements

  2. Guest

    Peter Lawton Guest

    If the task running is only single threaded, or does most of it's work on a
    single thread it will only be able to use 100% of 1 processor, sometimes the
    OS swaps this between the multiple processors, but it will never use more
    than the equivalent of 100% on a single processor, for example 50% on each
    of 2 CPUs or 25% on each of 4 CPUs.

    Programs that are written to be multi threaded, like SQL server, certainly
    can use all of your processors fully, unfortunately there aren't very many
    programs written to take advantage of multiple processors or drivers, DLLs
    etc either I'd guess.

    Other things that will use all processors are apps like Symantec AV for
    Exchange which runs multiple instances of the scanning engine, each one can
    potentially use 100% of a single CPU.

    I think you'd either have to write/compile the program to be able to use
    more than one thread effectively or perhaps run more than one instance at
    once. I'm not an expert though, I'm sure someone will be able to tell you
    more.

    Peter Lawton
     
    Peter Lawton, Jul 26, 2005
    #2
    1. Advertisements

  3. Guest

    Guest Guest

    It could be that these programs that were compiled as multithreaded
    applications are not structured very well for multitasking. That would
    explain why even though both processors are bouncing around between 20 and 80
    percent, the total never gets over 50%.

    Do you know of a true mutithreaded application that I could download and
    test on this machine?
     
    Guest, Jul 27, 2005
    #3
  4. Guest

    Peter Lawton Guest

    That's difficult, there are very few true multithreaded programs that I know
    of. The ones I use that seem to do it very well are things like SQL

    Perhaps you could try some benchmarking software and run two instances at
    once?

    Peter Lawton
     
    Peter Lawton, Jul 27, 2005
    #4
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.