Hello

I just pushed the "type-filter" branch. It's supposed to replace the old
"ignore" API as well as ICACHES and IO topology flags in v2.0.

Main points:
* you may now enable, disable and query the "ignoring" (now called
filter) for any object type
* instruction caches and I/O don't need special topology flags anymore,
you may just set their filtering to KEEP_ALL
* there are 4 kinds of filter. KEEP_ALL and KEEP_NONE (obvious).
KEEP_STRUCTURE (similar to what we have in v1.x). KEEP_IMPORTANT (for
I/Os without too many useless objects).
* defaults are unchanged, both in the C API and in command-line tools

If you want everything (like lstopo), you just
hwloc_topology_set_all_types_filter(topology,
HWLOC_TYPE_FILTER_KEEP_ALL). There are variants for just changing the
filter for all I/O types, all caches, or all instruction caches. Examples:
https://github.com/open-mpi/hwloc/blob/type-filter/utils/hwloc/hwloc-diff.c#L72
https://github.com/open-mpi/hwloc/blob/type-filter/doc/examples/sharedcaches.c#L35
https://github.com/open-mpi/hwloc/blob/type-filter/tests/hwloc/cuda.c#L37

Full API:
https://github.com/open-mpi/hwloc/blob/type-filter/include/hwloc.h#L1919

Brice

Reply via email to