Brice Goglin, le Sat 30 Jan 2010 17:40:29 +0100, a écrit :
> Samuel Thibault wrote:
> > Brice Goglin, le Sat 30 Jan 2010 17:34:32 +0100, a écrit :
> >   
> >> But now that I understand all this, I wonder what application developers
> >> will think about it. Most applications want the list of procs that are
> >> online and allowed.
> >>     
> >
> > And that's what they already get by default unless they set the
> > WHOLE_SYSTEM flag.
> 
> r1711 says about obj->cpuset:
> "They however may be offline, or not allowed for binding"

I've added "if the WHOLE_SYSTEM flag is set"?

Yes, if we weren't wanting to express contradictory things it'd be way
simpler, but we want to.  I don't believe duplicating information will
help the programmer to understand things.  For now, I can see three
usage cases:

- An application wants to bind itself somewhere.  That's what the
  default configuration is meant for.
- A user monitoring application wants to check where things are bound.
  The default configuration works for that too, provided it is started
  from the same environment.  If not, an hwloc_topology_set_pid()
  configuration function is needed to get the proper restrictions.
- A global monitoring application wants to check which processors are
  online/allowed and where applications are running etc.  That's what
  the HWLOC_TOPOLOGY_FLAG_WHOLE_SYSTEM flag helps for.

Samuel

Reply via email to