On Tue, 2007-04-03 at 12:33 -0600, Ralph H Castain wrote:
> On 4/3/07 9:32 AM, "Li-Ta Lo" <ollie_at_[hidden]> wrote:
> > On Sun, 2007-04-01 at 13:12 -0600, Ralph Castain wrote:
> >> 2. I'm not sure what you mean by mapping MPI processes to "physical"
> >> processes, but I assume you mean how do we assign MPI ranks to processes on
> >> specific nodes. You will find that done in the orte/mca/rmaps framework. We
> >> currently only have one component in that framework - the round-robin
> >> implementation - that maps either by slot or by node, as indicated by the
> >> user. That code is fairly heavily commented, so you hopefully can understand
> >> what it is doing.
> > How does this work in a multi-core environment? the optimal way may be
> > putting processes on every other "slot" on a two cores system?
> Well, that's a good question. At the moment, the only environments where we
> encounter multiple cores treat each core as a separate "slot" when they
> assign resources. We don't currently provide an option that says "map by
> two", so the only way to do what you describe would be to manually specify
> the mapping, slot by slot.
I also don't understand how Paffinity work for this case. When orted
launch N processes on a node, does it have control on how those
processes are started and mapped to the core/processor? Or is it
the case that O.S. puts the process on whatever cores it picks and
the paffinity module will try to "pin" the process on the core (picked
> Not very pretty.
> If someone cares to suggest some alternative notation/option for requesting
> that kind of mapping flexibility, I'm certainly willing to implement it (it
> would be rather trivial to do "map by N", but might be more complicated if
> you want other things).
What is the current syntax of the config file/command line? Can we do
something like array index in those script languages e.g. [0:N:2]?