diff --git a/src/graph/rome_models.cc b/src/graph/rome_models.cc index 64ab60d22d..f0afd84f56 100644 --- a/src/graph/rome_models.cc +++ b/src/graph/rome_models.cc @@ -500,6 +500,19 @@ static struct rcclRomeModel rome_model_72 = { .options = "disableNumaMatching=1,tuning=2", }; +static struct rcclRomeModel rome_model_73 = { + .nGpus = 8, .nCpus = 4, .nNics = 0, .nLinks = 3, + .gpuIds = { 0xc1000, 0xc6000, 0xc9000, 0xce000, 0xd1000, 0xd6000, 0xd9000, 0xde000, }, + .nicIds = { }, + .gpuNuma = { 3, 3, 1, 1, 0, 0, 2, 2, }, + .nicNuma = { }, + .connMatrix = { 0, 4, 1, 0, 0, 0, 2, 0, 4, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 4, 2, 0, 0, 0, 0, 1, 4, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 4, 1, 0, 0, 1, 0, 0, 4, 0, 0, 1, 2, 0, 0, 0, 1, 0, 0, 4, 0, 0, 0, 1, 0, 1, 4, 0, }, + .gdrLevel = { }, + .pattern = "20202020", + .ringBase = "0 1 3 2 4 5 7 6|6 7 5 4 2 3 1 0|0 1 5 4 6 7 3 2|2 3 7 6 4 5 1 0", + .options = "", +}; + static struct rcclRomeModel romeTopoModels[] = { rome_model_22, rome_model_25, @@ -536,6 +549,7 @@ static struct rcclRomeModel romeTopoModels[] = { rome_model_68, rome_model_71, rome_model_72, + rome_model_73, }; /* Parse user defined rings. Format is like : diff --git a/tools/scripts/topo_val.sh b/tools/scripts/topo_val.sh index cd2ef834ec..6b48ecf548 100755 --- a/tools/scripts/topo_val.sh +++ b/tools/scripts/topo_val.sh @@ -21,7 +21,7 @@ DIR="$(cd -P "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -for i in {0..72} +for i in {0..73} do if [[ $i -eq 50 ]] || [[ $i -eq 51 ]] then diff --git a/tools/topo_expl/Makefile b/tools/topo_expl/Makefile index 1edb7f0edf..9ca8fe4e8c 100644 --- a/tools/topo_expl/Makefile +++ b/tools/topo_expl/Makefile @@ -6,7 +6,7 @@ endif HIPCC = $(HIP_PATH)/bin/hipcc EXE = topo_expl -CXXFLAGS = -g -O3 -Iinclude -I../../src -I../../src/include -I../../src/graph/ -I/opt/rocm/rocm_smi/include/ -DTOPO_EXPL -DENABLE_TRACE -lnuma +CXXFLAGS = -g -O3 -Iinclude -I../../src -I../../src/include -I../../src/graph/ -I/opt/rocm/rocm_smi/include/ -DTOPO_EXPL -DENABLE_TRACE files = $(EXE).cpp model.cpp utils.cpp ../../src/graph/topo.cc ../../src/graph/rings.cc ../../src/graph/paths.cc ../../src/graph/trees.cc \ ../../src/graph/search.cc ../../src/graph/connect.cc ../../src/graph/tuning.cc ../../src/graph/xml.cc ../../src/misc/nvmlwrap_stub.cc ../../src/graph/rome_models.cc diff --git a/tools/topo_expl/models/topo_8p1h_2.xml b/tools/topo_expl/models/topo_8p1h_2.xml new file mode 100644 index 0000000000..ef01230422 --- /dev/null +++ b/tools/topo_expl/models/topo_8p1h_2.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/topo_expl/topo_expl.cpp b/tools/topo_expl/topo_expl.cpp index e54f413985..ed0480a73a 100644 --- a/tools/topo_expl/topo_expl.cpp +++ b/tools/topo_expl/topo_expl.cpp @@ -142,6 +142,7 @@ NodeModelDesc model_descs[] = { {4, "topo_8p1h_n1.xml", "4 nodes 8P1H"}, {1, "topo_8p1h_1.xml", "single node 8P1H Alt."}, {4, "topo_8p1h_1.xml", "4 nodes 8P1H Alt."}, + {1, "topo_8p1h_2.xml", "single node 8P1H Alt."}, }; int main(int argc,char* argv[])