[hwloc-devel] Create success (hwloc r1.0a1r1884)

2010-03-31 Thread MPI Team
Creating nightly hwloc snapshot SVN tarball was a success.

Snapshot:   hwloc 1.0a1r1884
Start time: Wed Mar 31 21:01:02 EDT 2010
End time:   Wed Mar 31 21:03:03 EDT 2010

Your friendly daemon,
Cyrador


Re: [hwloc-devel] Strange difference

2010-03-31 Thread Samuel Thibault
Brice Goglin, le Wed 31 Mar 2010 11:37:17 +0200, a écrit :
> We might need to replace some occurences of "logical processor" in the
> doc with "processing unit". Or use both from time to time to make it
> clear that it's very similar (and explain the difference somewhere).

I'd say keep it in the glossary section of the documentation, to make it
clear that by PU we mean "logical processor", and not "core".

Samuel


Re: [hwloc-devel] Strange difference

2010-03-31 Thread Brice Goglin
Jeff Squyres wrote:
> Is it a crime to use the full word "Processor"?  At least on my machine, the 
> output width is still far less than 80 characters, so the full word should be 
> no problem.  But I don't know if there are other strange topologies out there 
> that would take up more space...?  (it certainly would in the graphic 
> output...)
>   

Trying to summarize what was said:
* There is no output width problem in text mode
* There is a strong width problem in graphic mode
* "Processor": ambiguous wrt socket/die, and needs a much shorter
version in the graphic output
* "CPU": ambiguous wrt socket/die
* "Proc": ambiguous wrt socket/die, and also with Process
* "PU": beware that it'll need some thinking since we cannot bind
processes/threads on GPU and SPU. Could be an empty CPU set. Or another
PU object.

Anybody really against PU ? Otherwise I'll commit the attached patch and
maybe we'll finally release 1.0-rc1 one day :)

The patch renames PROC into PU, both in the core and tools. I added some
backward compat code so that the "proc" string is still converted into
HWLOC_OBJ_PU (but it's not documented).

We might need to replace some occurences of "logical processor" in the
doc with "processing unit". Or use both from time to time to make it
clear that it's very similar (and explain the difference somewhere).

Brice

diff --git a/NEWS b/NEWS
index 7c305e8..83b577a 100644
--- a/NEWS
+++ b/NEWS
@@ -25,6 +25,8 @@ Version 1.0.0
   + Support binding of entire multithreaded process on Linux.
   + Cleanup XML export/import.
 * Objects
+  + HWLOC_OBJ_PROC is renamed into HWLOC_OBJ_PU for "Processing Unit",
+its stringified type name is now "PU".
   + Rework memory attributes.
   + Add different cpusets in each object to specify processors that
 are offline, unavailable, ...
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 0a3537d..fe521a0 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -233,7 +233,7 @@ man3_MANS = \
 $(DOX_MAN_DIR)/man3/HWLOC_OBJ_MACHINE.3 \
 $(DOX_MAN_DIR)/man3/HWLOC_OBJ_MISC.3 \
 $(DOX_MAN_DIR)/man3/HWLOC_OBJ_NODE.3 \
-$(DOX_MAN_DIR)/man3/HWLOC_OBJ_PROC.3 \
+$(DOX_MAN_DIR)/man3/HWLOC_OBJ_PU.3 \
 $(DOX_MAN_DIR)/man3/HWLOC_OBJ_SOCKET.3 \
 $(DOX_MAN_DIR)/man3/HWLOC_OBJ_SYSTEM.3 \
 $(DOX_MAN_DIR)/man3/HWLOC_TOPOLOGY_FLAG_WHOLE_SYSTEM.3 \
diff --git a/doc/hwloc-hello.c b/doc/hwloc-hello.c
index a86046d..95586a7 100644
--- a/doc/hwloc-hello.c
+++ b/doc/hwloc-hello.c
@@ -84,7 +84,7 @@ int main(void)
  */
 levels = 0;
 size = 0;
-for (obj = hwloc_get_obj_by_type(topology, HWLOC_OBJ_PROC, 0);
+for (obj = hwloc_get_obj_by_type(topology, HWLOC_OBJ_PU, 0);
  obj;
  obj = obj->parent)
   if (obj->type == HWLOC_OBJ_CACHE) {
diff --git a/doc/hwloc.doxy b/doc/hwloc.doxy
index c2601b6..adbfff9 100644
--- a/doc/hwloc.doxy
+++ b/doc/hwloc.doxy
@@ -769,7 +769,7 @@ os_index field of objects, but such practice should be avoided as much
 as possible for the reasons described above (except perhaps for
 prettyprinting / debugging purposes).

-::HWLOC_OBJ_PROC objects are supposed to have different physical/OS
+::HWLOC_OBJ_PU objects are supposed to have different physical/OS
 indexes since the OS uses them for binding.  The \p os_index field of
 these objects provides the identifier that may be used for such
 binding, and hwloc_get_proc_obj_by_os_index() finds the object
diff --git a/include/hwloc.h b/include/hwloc.h
index 1e519a5..fc8a278 100644
--- a/include/hwloc.h
+++ b/include/hwloc.h
@@ -94,7 +94,7 @@ typedef enum {
 			  * A computation unit (may be shared by several
 			  * logical processors).
 			  */
-  HWLOC_OBJ_PROC,	/**< \brief (Logical) Processor.
+  HWLOC_OBJ_PU,		/**< \brief Processing Unit, or (Logical) Processor.
 			  * An execution unit (may share a core with some
 			  * other logical processors, e.g. in the case of
 			  * an SMT core).
@@ -124,7 +124,7 @@ typedef enum {
  * contain sockets which contain caches, which contain cores, which contain
  * processors).
  *
- * \note HWLOC_OBJ_PROC will always be the deepest.
+ * \note HWLOC_OBJ_PU will always be the deepest.
  * \note This does not mean that the actual topology will respect that order:
  * e.g. as of today cores may also contain caches, and sockets may also contain
  * nodes. This is thus just to be seen as a fallback comparison method.
@@ -373,7 +373,7 @@ HWLOC_DECLSPEC void hwloc_topology_check(hwloc_topology_t topology);
 /** \brief Ignore an object type.
  *
  * Ignore all objects from the given type.
- * The bottom-level type HWLOC_OBJ_PROC may not be ignored.
+ * The bottom-level type HWLOC_OBJ_PU may not be ignored.
  * The top-level object of the hierarchy will never be ignored, even if this function
  * succeeds.
  */
@@ -383,7 +383,7 @@ HWLOC_DECLSPEC int hwloc_topology_ignore_type(hwloc_topology_t topology, hwloc_o
  *
  * Ignore all objects from the given type as long as they do not bring any