Skip to content

Commit bc89428

Browse files
committed
memattrs: rework the heuristics to find types of memory nodes
Actually create tiers internally to group nodes by type. Split tiers if bandwidth or latency difference is too high (10% by default). Don't enforce any order in types yet, just apply our easy heuristics on unknown tiers instead of enforcing them to be first. 2 slight differences: * HWLOC_MEMTIERS_GUESS=spm_is_hbm doesn't set non-HBM nodes to DRAM anymore. * HWLOC_MEMTIERS_GUESS=none still sets node subtypes when they are obvious (no need to guess anything) tests/hwloc/memtiers.c is updated, extended, and improved. Signed-off-by: Brice Goglin <[email protected]>
1 parent a1b9391 commit bc89428

File tree

6 files changed

+410
-158
lines changed

6 files changed

+410
-158
lines changed

doc/hwloc.doxy

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1117,6 +1117,17 @@ following environment variables.
11171117
Bit 2 enables the use of target/initiator information.
11181118
</dd>
11191119

1120+
<dt>HWLOC_MEMTIERS_GUESS=none</dt>
1121+
<dt>HWLOC_MEMTIERS_GUESS=all</dt>
1122+
<dd>Disable or enable all heuristics to guess memory subtypes and tiers.
1123+
By default, hwloc only uses heuristics that are likely correct
1124+
and disables those that are unlikely.
1125+
</dd>
1126+
<!-- not stable yet, hence not documented
1127+
HWLOC_MEMTIERS_GUESS=spm_is_hbm
1128+
assume all SPM nodes are HBM
1129+
-->
1130+
11201131
<dt>HWLOC_GROUPING=1</dt>
11211132
<dd>enables or disables objects grouping based on distances.
11221133
By default, hwloc uses distance matrices between objects (either read

0 commit comments

Comments
 (0)