charm icon indicating copy to clipboard operation
charm copied to clipboard

Cray XE/XT topology functions should use rca_get_meshtopology() to honestly report mesh/torus

Open PhilMiller opened this issue 12 years ago • 2 comments

Original issue: https://charm.cs.illinois.edu/redmine/issues/194


Quoth Jim:

I'm doing torus optimizations and TopoManager seems to have it's own ideas on what the actualy topology of the network is (really a 23x24x24 torus):

apr29_512b.rec:X TOPOLOGY 5: 0 1 2 3 4 apr29_512b.rec:Y TOPOLOGY 4: 0 1 2 3 apr29_512b.rec:Z TOPOLOGY 24: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 18 19 20 21 22 23

It's saying 5 (mesh) by 4 (mesh) by 24 (torus), but only reporting a torus when the job actually spans the full machine in that dimension:

apr29_3000b.rec:X TOPOLOGY 8: 0 1 2 3 4 5 6 7 apr29_3000b.rec:Y TOPOLOGY 24: 0 1 2 3 20 21 22 23 apr29_3000b.rec:Z TOPOLOGY 24: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Well, actually it's worse than that in XTTorus.h:

// we get a torus only if the size of the dimension is the biggest torus[0] = 0; torus[1] = (dimNY == yDIM) ? 1 : 0; torus[2] = (dimNZ == zDIM) ? 1 : 0; torus[3] = 0;

There is this function rca_get_meshtopology() that probably tells you if a given dimension is a torus or not, so is there a reason not to use it?

There are actual mesh machines out there, so this test seems necessary.

PhilMiller avatar Apr 30 '13 19:04 PhilMiller

Original date: 2013-06-07 01:39:45


As of now cray does not provide a way to differentiate between mesh and tori. Request Cray for the same.

nikhil-jain avatar Apr 24 '19 20:04 nikhil-jain

Original date: 2015-02-09 17:49:52


Not much progress here. Cray is not changing the API much.

nikhil-jain avatar Apr 24 '19 20:04 nikhil-jain