Skip to content

Commit

Permalink
modules/resource-hwloc: only load info we use
Browse files Browse the repository at this point in the history
Problem: resource-hwloc module consumes a large amount of
rc1 execution time on a large instance on machine with
complex I/O hierarchy (sierra).

Drop the HWLOC_TOPOLOGY_FLAG_WHOLE_IO flag.

Call hwloc_topology_ignore_type HWLOC_OBJ_CACHE and
HWLOC_OBJ_GROUP to further prune information we don't
currently use.

Fixes #1454
  • Loading branch information
garlick committed Apr 13, 2018
1 parent c2502c4 commit ff5f4d0
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions src/modules/resource-hwloc/resource.c
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,10 @@ static int ctx_hwloc_init (flux_t *h, resource_ctx_t *ctx)
flux_log_error (h, "flux_topology_init");
goto done;
}
if (hwloc_topology_set_flags (ctx->topology,
HWLOC_TOPOLOGY_FLAG_WHOLE_IO) < 0) {
flux_log_error (h, "hwloc_topology_set_flags");
goto done;
}

if (hwloc_topology_ignore_type (ctx->topology, HWLOC_OBJ_CACHE) < 0)
flux_log (h, LOG_ERR, "hwloc_topology_ignore_type OBJ_CACHE failed");
if (hwloc_topology_ignore_type (ctx->topology, HWLOC_OBJ_GROUP) < 0)
flux_log (h, LOG_ERR, "hwloc_topology_ignore_type OBJ_GROUP failed");
key = xasprintf ("config.resource.hwloc.xml.%" PRIu32, ctx->rank);
if (!(f = flux_kvs_lookup (h, 0, key))) {
flux_log_error (h, "flux_kvs_lookup");
Expand Down

0 comments on commit ff5f4d0

Please sign in to comment.