Jeff Squyres, le Thu 22 Sep 2011 21:36:31 +0200, a écrit :
> (SIDENOTE: reading this letter after I wrote it, I see that it sounds overwhelmingly negative. Please do not take it that way!
Sure! If these are the only negative points of our API, it's actually a
very positive mail ;)
> 1. The depth-specific accessors are Bad. Given the warning language in the docs paired with the practical realities that some people actually do mix and match CPUs in a single server (especially when testing new chips), the depth-based accessors *can/will* fail. Meaning: you have to write application code that can handle the non-uniform depth cases, making the depth-based accessors essentially useless.
I believe this issue is solved by better pointers at documentation,
> (2c) to find the set of any given Lx caches, you basically have to traverse the tree looking for HWLOC_OBJ_CACHE *and* attr->cache.depth==x. It would be cleaner if we could just look for HWLOC_OBJ_CACHE_L<whatever>.
But then you wouldn't be able to look at OBJ_CACHE when you only want to
care about caches, whatever their level.
> 4. src/topology-synthetic.c emits error messages on stderr when you try to import invalid XML.
Already fixed, AIUI.
> 3. It would be really great to have some kind of flag in each object that says whether all of its children are homogeneous or not.
> 5. The XML dump of the topology doesn't include all the support information, such as whether you can bind to threads/cores/etc.
These are doable, indeed (Thanks Brice for adding it to the TODO ticket).
Thanks for the feedback, that's extremely precious to make hwloc what