On Mon, 28 Jun 2004, Narayan D. G wrote:
> if we run simple programs with single process (mpirun pgm -np 1) on
> SIGNGLE m/c, the prg takes less time. If I run with MANY processeson
> SINGLE m/c, it will take more time as compared to 1 process. Actually,
> the time should be less if we run with multiple proceses. Why it is so ?
I'm not sure what "m/c" is, but I think I understand the gist of your
question. This has been discussed on the list several times in the past
-- you might want to search the list archives for more complete answers.
The short version is that you are overloading your CPU and the OS has to
keep switching between all your different processes. This adds
considerable overhead as compared to when you are only running one
process. You're likely also thrashing your different levels of cache,
which can kill performance.
To get speedup, you need to spread those multiple processes across
multiple CPUs (and potentially multiple nodes).
--
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/
|