Closed yfguo closed 2 years ago
@yfguo - I'm not the original author of this test (@jdinan is), but I'm pretty sure the intent is for odd PEs (which have even_team == SHMEM_TEAM_INVALID
) to enter check_2d
, then to fail to split even_team
(line 37), then for check_2d
to return 0. So no errors should occur, if I'm not mistaken.
So what do you mean by "causes failure"? Yes, the team-split fails for odd PEs, but that is supposed to happen and the check_2d
function should print "2d split failed" but still return 0 on all odd PEs.
On a related note, are you aware of the recent clarification to the spec here? shmem_team_split_2d
should return nonzero when the parent team is SHMEM_TEAM_INVALID
. If it were to return 0, that could possibly lead to the issue you mention.
@davidozog Thanks for the clarification. The "2d split failed" confused me. Now I see why it happened.
The test check splits of a even_team. The existing code would attempt split on odd PEs which causes failure here. The non-even PEs should check and simply wait for completion.