Virtual device enablement ( Minimal changes ) (#2110)

* minimal changes

* Setting Default tuning table

* Add warnings NIC merge accross PCIe Root complexes,NUMA

---------

Co-authored-by: Corey Derochie <161367113+corey-derochie-amd@users.noreply.github.com>
This commit is contained in:
Avinash
2025-12-25 15:06:33 -06:00
committato da GitHub
parent f942810959
commit 6f62165369
5 ha cambiato i file con 155 aggiunte e 5 eliminazioni
+1 -2
Vedi File
@@ -1462,9 +1462,8 @@ ncclResult_t ncclTopoGetSystem(struct ncclComm* comm, struct ncclTopoSystem** sy
comm->ncclCollNet->getProperties, comm->ncclCollNet->makeVDevice, comm->ncclCollNet->devices, comm->ncclCollNet->name, comm->dmaBufSupport), ret, fail);
}
NCCLCHECKGOTO(ncclTopoGetSharedState(&state, comm->ncclNet->name, netStates), ret, fail);
// [RCCL] Disabled virtual devices
NCCLCHECKGOTO(ncclTopoProcessNet(xml, 0, dumpXmlFile, state,
comm->ncclNet->getProperties, nullptr /*comm->ncclNet->makeVDevice*/, comm->ncclNet->devices, comm->ncclNet->name, comm->dmaBufSupport), ret, fail);
comm->ncclNet->getProperties, comm->ncclNet->makeVDevice, comm->ncclNet->devices, comm->ncclNet->name, comm->dmaBufSupport), ret, fail);
pthread_mutex_unlock(&netLock);
netLockHeld = 0;
+21
Vedi File
@@ -915,3 +915,24 @@ ncclResult_t ncclTopoGetAlgoTime(struct ncclComm* comm, int coll, int algorithm,
*time = lat * latCount + nBytes / (1000 * bw);
return ncclSuccess;
}
/**
* takes gfx arch name as C-style string and returns a tuning index to
*/
int rcclGetTuningIndexForArch(const char* gfxarch) {
static const std::vector<std::pair<std::string, int>> tuningIndexMap = {
{"gfx906", 0}, {"gfx908", 0}, {"gfx90a", 0}, {"gfx942", 5},
{"gfx950", 6}, {"gfx1030", 0}, {"gfx1100", 0}, {"gfx1102", 0},
{"gfx1200", 7}, {"gfx1201", 7}
};
if (gfxarch == nullptr) return 0;
std::string arch(gfxarch);
for (const auto& p : tuningIndexMap) {
const std::string& prefix = p.first;
if (arch.size() >= prefix.size() &&
arch.compare(0, prefix.size(), prefix) == 0) {
return p.second;
}
}
return 0;
}