On Wed, Oct 31, 2007 at 11:13:46 -0700, Jeff Squyres wrote: > On Oct 31, 2007, at 10:45 AM, Karsten Bolding wrote: > > > In a different thread I read about a performance penalty in OpenMPI if > > more than one MPI-process is running on one processor/core - is that > > correct? I mean having max-slots>4 on a quad-core machine. > > Open MPI polls for message passing progress (to get the absolute > minimum latency -- it can be faster than blocking/waking up). If you > overload a machine, Open MPI will usually detect that and know to > call yield() in the middle of its polling so that other processes can > get swapped in and make progress.
Does OpenMPI detect if procceses share memory and hence do not communicate via sockets. > > But if you lie to Open MPI and tell it that there are more processors > than there really are, we may not recognize that the machine is > oversubscribed and therefore not call yield(). Hence, performance > will *really* go down the drain. and if I don't give any hints - just start my 13 jobs on 4 cores where the load balancing is done based on CPU-requirement (this could also be on 4 single-core processors where jobs can't be swapped) - that is in principle OK? > > -- > Jeff Squyres > Cisco Systems > Karsten -- ---------------------------------------------------------------------- Karsten Bolding Bolding & Burchard Hydrodynamics Strandgyden 25 Phone: +45 64422058 DK-5466 Asperup Fax: +45 64422068 Denmark Email: kars...@bolding-burchard.com http://www.findvej.dk/Strandgyden25,5466,11,3 ----------------------------------------------------------------------