On Fri, Dec 01, 2006 at 11:51:24AM +0100, Peter Kjellstrom wrote: > On Saturday 25 November 2006 15:31, shap...@isp.nsc.ru wrote: > > Hello, > > i cant figure out, is there a way with open-mpi to bind all > > threads on a given node to a specified subset of CPUs. > > For example, on a multi-socket multi-core machine, i want to use > > only a single core on each CPU. > > Thank You. > > This might be a bit naive but, if you spawn two procs on a dual core dual > socket system then the linux kernel should automagically schedule them this > way. > > I actually think this applies to most of the situations discussed in this > thread. Explicitly assigning processes to cores may actually get it wrong > more often than the normal linux scheduler. > If you run two single threaded ranks on the dual core dual socket node you better be placing them on the same core. Shared memory communication will be much faster (especially if two cores shares cache).
> /Peter (who may be putting a bit too much faith in the linux scheduler...) Linux scheduler does its best assuming the processes are unrelated. This is not the case with MPI ranks. -- Gleb.