additional topology-aware handling for Pstream
- extend base MPI routines to include a two-stage handling from inter-node to local-node
- adjust manual algorithms to include two-stage inter-node/local-node handling
Merge request reports
Activity
Filter activity
changed milestone to %v2506
added enhancement label
assigned to @Mattijs
For testing purposes on a single machine, can specify the
-opt-switch nodeComms=INT
(or in etc/controlDict). On startup with everything selected, have this type of information reported:Pstream initialized with: node communication : on [type=4] (64 ranks, 16 nodes) topology controls : (broadcast reduce gather combine mapGather gatherList)
With UPstream debugging on, will see this type of output:
[0] [mpi_allreduce] : op:8 type:5 count:1 comm:0 topo:1 [0] [mpi_allreduce] : op:8 type:5 count:1 comm:3 stage-1:reduce [0] [mpi_reduce] : (inplace) op:8 type:5 count:1 comm:3 topo:0 [0] [mpi_allreduce] : op:8 type:5 count:1 comm:2 stage-2:allreduce [0] [mpi_allreduce] : op:8 type:5 count:1 comm:3 stage-3:broadcast
Which indicates that the Allreduce (multi-stage) topological handling is being called.
Similarly, will see this type of output:
[0] [mpi_broadcast] : type:0 count:1052 comm:0 topo:1 [0] [mpi_broadcast] : type:0 count:1052 comm:2 substage [0] [mpi_broadcast] : type:0 count:1052 comm:3 substage
Here we can see that the top-level is using comm=0 (world) and the substages are using comm=2 (inter-node) and comm=3 (local-node).
Edited by Mark OLESENadded 15 commits
-
a7272d0e...a77aaa75 - 11 commits from branch
develop
- 94611ea5 - ENH: add node-based broadcasting and reduction
- 8716ca57 - ENH: add node-based gather(), listGather(), mapGather()
- 4a707fe0 - ENH: add node-based gatherList()
- 1b8cca18 - CONFIG: add named topoControls
Toggle commit list-
a7272d0e...a77aaa75 - 11 commits from branch
added 7 commits
-
7fd9e1b2...b9b0d1b3 - 3 commits from branch
develop
- 7b0ab0db - ENH: add node-based broadcasting and reduction
- c4b261c6 - ENH: add node-based gather(), listGather(), mapGather()
- a01f3ed8 - ENH: add node-based gatherList()
- db871856 - CONFIG: add named topoControls
Toggle commit list-
7fd9e1b2...b9b0d1b3 - 3 commits from branch
mentioned in commit 4de0b84c
Please register or sign in to reply