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