UnitTest: add test cases for 2.14 API (ncclCommInitRankConfig and ncclCommFinalize for non-blocking communicator) (#662)

[ROCm/rccl commit: 8250092367]
This commit is contained in:
Pedram Alizadeh
2022-12-13 16:05:09 -05:00
committad av GitHub
förälder 431c7d2cb9
incheckning f29aa66d4f
6 ändrade filer med 146 tillägg och 9 borttagningar
+7 -3
Visa fil
@@ -85,12 +85,13 @@ namespace RcclUnitTesting
}
void TestBed::InitComms(std::vector<std::vector<int>> const& deviceIdsPerProcess,
int const numCollectivesInGroup)
int const numCollectivesInGroup, bool const useBlocking)
{
// Count up the total number of GPUs to use and track child/deviceId per rank
this->numActiveChildren = deviceIdsPerProcess.size();
this->numActiveRanks = 0;
this->numCollectivesInGroup = numCollectivesInGroup;
this->useBlocking = useBlocking;
this->rankToChildMap.clear();
this->rankToDeviceMap.clear();
if (ev.verbose) INFO("Setting up %d active child processes\n", this->numActiveChildren);
@@ -139,6 +140,9 @@ namespace RcclUnitTesting
// Send the number of collectives to be run per group call
PIPE_WRITE(childId, numCollectivesInGroup);
// Send the RCCL communication with blocking or non-blocking option
PIPE_WRITE(childId, useBlocking);
// Send whether to use MultiRank interfaces or not.
PIPE_WRITE(childId, useMulti);
@@ -159,9 +163,9 @@ namespace RcclUnitTesting
}
}
void TestBed::InitComms(int const numGpus, int const numCollectivesInGroup)
void TestBed::InitComms(int const numGpus, int const numCollectivesInGroup, bool const useBlocking)
{
InitComms(TestBed::GetDeviceIdsList(1, numGpus), numCollectivesInGroup);
InitComms(TestBed::GetDeviceIdsList(1, numGpus), numCollectivesInGroup, useBlocking);
}
void TestBed::SetCollectiveArgs(ncclFunc_t const funcType,