From: Axel Farr <Axel.Farr@physik.tu-darmstadt.de>
Newsgroups: comp.parallel.pvm
Subject: Re: pvm on multiprocessor smp linux and sgi machines
Date: Thu, 22 Jul 1999 11:21:45 +0200
Organization: Technische Universitaet Darmstadt
Message-Id: <3796E2A9.678E4EBE@physik.tu-darmstadt.de>
References: <3794EA7F.D0B26813@designlab.ukans.edu>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: ukc comp.parallel.pvm:8595


Matthew Copeland wrote:
> 
> I have recently been playing around with pvm3.4.1 on two Dual PII-333,
> and an SGI Origin 2000 (6 processors).  I have managed to get the
> Pentium-IIs talking to each other, but I when I fire off a job, it only
> uses one of the processors on each machine, rather than both of the
> processors on each machine.
>         A similar problem occurs when I am attempting to fire off a job for the
> origin.  It will use one processor, but not more than that.  What do I
> need to do to get pvm to recognize the fact that their are multiple
> processors in the machine and to make use of them.
> 
> Matthew

PVM processes are single-threaded. So you must start at least one job
for each processor. On my Dual-PII Machine, I use 2 or 4 processes. The
advantage of 4 processes over 2 is the fact, that a switch between two
processors should not occur as often as in the case with 2 processes,
because when a job has it current ammount of processing time eaten up,
there is still one job waiting which ran on the same processor before,
so that one will be choosen instead of one of the other jobs which where
running on the other CPU. With one two working processes, it could
happen, that one process is waiting for cpu, because it CPU does some
other work, the other process has eaten up its CPU time, and if the
waiting process ist the only process in the ready-queu, it will then
continue on the other CPU causing some overhead, because 512 kByte of
cached memory will have to be moved from one CPU to the other.

Axel Farr

