Αυτή η υποβολή περιλαμβάνεται σε:
akolliasAMD authored and GitHub committed 2024-07-26 08:59:55 -06:00
1 γονέας 05dca6def9
υποβολή c246e25f8e
5 files changed
+33 -23

No files matched your search

+9 -7
Προβολή Αρχείου
@@ -15,7 +15,7 @@ namespace RcclUnitTesting
int const UT_SINGLE_PROCESS = (1<<0);
int const UT_MULTI_PROCESS = (1<<1);
int getArchInfo(bool *isRightArch)
int getArchInfo(bool *isRightArch, const char *gfx)
{
// Prepare parent->child pipe
int pipefd[2];
@@ -25,7 +25,7 @@ namespace RcclUnitTesting
}
pid_t pid = fork();
if (0 == pid) {
bool isGfx94 = false;
bool isGfxTest = false;
int dev;
hipGetDeviceCount(&dev);
for (int deviceId = 0; deviceId < dev; deviceId++) {
@@ -34,14 +34,14 @@ namespace RcclUnitTesting
hipGetDeviceProperties(&devProp, deviceId);
char *gcnArchNameToken = strtok(devProp.gcnArchName, ":");
strcpy(gcn, gcnArchNameToken);
if(std::strncmp("gfx94", gcn, 5) == 0) {
isGfx94 = true;
if(std::strncmp(gfx, gcn, 5) == 0) {
isGfxTest = true;
} else {
isGfx94 = false;
isGfxTest = false;
break;
}
}
if (write(pipefd[1], &isGfx94, sizeof(isGfx94)) != sizeof(isGfx94)) return TEST_FAIL;
if (write(pipefd[1], &isGfxTest, sizeof(isGfxTest)) != sizeof(isGfxTest)) return TEST_FAIL;
close(pipefd[0]);
close(pipefd[1]);
exit(EXIT_SUCCESS);
@@ -95,7 +95,9 @@ namespace RcclUnitTesting
numDetectedGpus = 0;
getDeviceCount(&numDetectedGpus);
isGfx94 = false;
getArchInfo(&isGfx94);
getArchInfo(&isGfx94, "gfx94");
isGfx12 = false;
getArchInfo(&isGfx12, "gfx12");
showNames = GetEnvVar("UT_SHOW_NAMES" , 1);
minGpus = GetEnvVar("UT_MIN_GPUS" , 2);
@@ -31,6 +31,7 @@ namespace RcclUnitTesting
int timeoutUs; // Set timeout for child in microseconds [UT_TIMEOUT_US]
bool useMultithreading; // Multi-thread single-process ranks [UT_MULTITHREAD]
bool isGfx94; // Detects if architecture is gfx94
bool isGfx12; // Detects if architecture is gfx12
// Constructor that parses and collects environment variables
EnvVars();