[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: CPU's processing division



On Sat, May 23, 2009 at 3:02 PM, Hashimoto <xano.tte@gmail.com> wrote:
> Hello,
>
> Just a doubt regarding my system processing division. While monitoring the
> CPU processing I realized the CPU1 is always more busy then CPU0. Right now
> I'm using the VirtualBox, and the CPU1 is 99% busy, and the CPU0 just 34%.

This is normal behavior.

I'm assuming that you are expecting the 2 CPU's to each have a
balanced equal load.  However since most applications are not
multithreaded they can only use one CPU.  The kernel is the one who
decides which processes run on each CPU, and also decides when to
switch a thread to a different CPU because it is taking up too many
resources.  This is done by the process scheduler in the kernel.
Multi threaded apps will usually balance the load between CPU's
better, but it is not always balanced 100% perfectly.  A lot of it is
up to how the programmer writes the software, and how good the
programmer implements multi threading for their application.  Not all
tasks will be suited for multi threading either... something that is
dealing with complete random access will not benefit from multi
threading, as it will probably be limited by high I/O time. On the
other hand, something that is high in CPU usage, such as video
encoding or 3d rendering, will greatly benefit from multi threading.


-- 
Brent Kolasinski

CUIR Tech Center
University of Wisconsin - Milwaukee
Engelmann B26
(414)-229-6363


Reply to: