On Dec 3, 2009, at 4:55 PM, Brice Goglin wrote:

[...snipped all that wasn't relevant to reply to...]

> > Has anyone contacted Penguin and/or XHPC (and/or any other SSI projects) to 
> > see if they care about being supported by hwloc? 
> 
> Your friends Joshua from Penguin is supposed to contact me back soon and
> we're supposed to talk about hwloc (and OMX).

Exxxcellent.

> I don't think we've had any contact with other SSI projects.

K.

> > Perhaps hwloc CLI tools should be able to show/accept *both* kinds of 
> > indexing...?  E.g.:
> >
> >   lstopo --physical
> >   lstopo --logical
> 
> Agreed.
> 
> >   hwloc-bind --physical ...
> >   hwloc-bind --logical ...
> 
> Maybe too, yeah.

I'll file a ticket about this.

I'll file another ticket to make the output of lstopo show values that can be 
used in the default input of hwloc-bind.

> > Ah, ok.  To be clear, is it accurate to say that it is one of the following 
> > forms:
> >
> > - a hex number (without leading "0x" -- would "0x" be ignored if it is 
> > supplied?)
> 
> We never used 0x there.

Ok.

It might be good to safely ignore 0x if it's present, but that's a small 
feature enhancement that can be done at any time (I filed a future ticket).

> We might want to drop the Linux "cpuset" word and use "cgroup" instead.
> Both are supported by Linux, but the latter now contains the former and
> more, so people are supposed to use cgroup now. hwloc supports both.

Linux is likely to be among the most popular target for hwloc -- so can you 
explain in good words definitions for the following:

- hwloc cpuset (or if "cgroup", if we're renaming it)
- Linux cpuset
- Linux cgroup

(I'm significantly adding to hwloc-bind.1 -- I'll tweak your words a bit and 
include them as explanation for exactly what we mean by hwloc cpuset/cgroup).

Additionally -- the word "father" is used in the docs.  Should we use the 
gender-neutral "parent" instead?

> > Does it always need to start with system?
> 
> You don't care about starting with system or something else. You can
> ignore the system level as you could ignore the socket level between
> nodes and cores.
> 
> If you have 1 system with 2 nodes with 2 sockets each with 2 cores each,
> you get:
> node:1 core:2 is equivalent to system:0 node:1 socket:2 core:0 and
> equivalent to system:0 core:6

Did you mean:

  node:1.core:2 == system:0.node:1.socket:2.core:0 == system:0.core:6

?

> But you cannot be that flexible with OS/physical indexes since multiple
> cores/sockets may have the same index.

What I meant by my question was -- aren't the 3 diagrams above equivalent to 
"core:6"? If so, what's the value of the foo.bar.baz notation?  If the examples 
you provided above use hwloc logical numbering, then there's an exact 1-to-1 
mapping of all of those -- so why type something longer than "core:6"?

However, if you use physical/OS numbering, you *have* to use foo.bar.baz 
notation because some of the numbers are the same (as I showed in my first mail 
-- where multiple cores had index "0").  So:

  node:1.core:0 != node:2.core:0

I think that your point is thatthe foo.bar.baz syntax only have usefulness with 
physical/OS indexing?  Correct?

-- 
Jeff Squyres
jsquy...@cisco.com


Reply via email to