diff --git a/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_device.h b/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_device.h index e699eec3d4..5ca5193b38 100755 --- a/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_device.h +++ b/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_device.h @@ -255,6 +255,7 @@ class Device { rsmi_status_t dev_log_gpu_metrics(std::ostringstream& outstream_metrics); AMGpuMetricsPublicLatestTupl_t dev_copy_internal_to_external_metrics(); + static const std::map devInfoTypesStrings; private: std::shared_ptr monitor_; diff --git a/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_gpu_metrics.h b/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_gpu_metrics.h index b67f90c740..b6cccdc6a2 100644 --- a/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_gpu_metrics.h +++ b/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_gpu_metrics.h @@ -724,7 +724,7 @@ class GpuMetricsBase_t }; using GpuMetricsBasePtr = std::shared_ptr; -using AMDGpuMetricFactories_t = std::map; +using AMDGpuMetricFactories_t = const std::map; class GpuMetricsBase_v11_t final : public GpuMetricsBase_t diff --git a/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_main.h b/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_main.h index 1cd2ec343f..c957f5123c 100755 --- a/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_main.h +++ b/projects/amdsmi/rocm_smi/include/rocm_smi/rocm_smi_main.h @@ -117,7 +117,6 @@ class RocmSMI { void debugRSMIEnvVarInfo(); bool isLoggingOn(void); uint32_t getLogSetting(void); - static const std::map devInfoTypesStrings; private: std::vector> devices_; diff --git a/projects/amdsmi/rocm_smi/src/rocm_smi.cc b/projects/amdsmi/rocm_smi/src/rocm_smi.cc index 35082a9850..db5dbcc768 100755 --- a/projects/amdsmi/rocm_smi/src/rocm_smi.cc +++ b/projects/amdsmi/rocm_smi/src/rocm_smi.cc @@ -82,7 +82,7 @@ using amd::smi::monitorTypesToString; using amd::smi::getRSMIStatusString; using amd::smi::AMDGpuMetricsUnitType_t; using amd::smi::AMDGpuMetricTypeId_t; -auto &devInfoTypesStrings = amd::smi::RocmSMI::devInfoTypesStrings; +auto &devInfoTypesStrings = amd::smi::Device::devInfoTypesStrings; static const uint32_t kMaxOverdriveLevel = 20; static const float kEnergyCounterResolution = 15.3F; @@ -2027,7 +2027,7 @@ enum eNameStrType { NAME_STR_SUBSYS }; -std::map +static const std::map mapStringToRSMIComputePartitionTypes { {"CPX", RSMI_COMPUTE_PARTITION_CPX}, {"SPX", RSMI_COMPUTE_PARTITION_SPX}, @@ -2036,7 +2036,7 @@ mapStringToRSMIComputePartitionTypes { {"QPX", RSMI_COMPUTE_PARTITION_QPX} }; -std::map +static const std::map mapRSMIToStringComputePartitionTypes { {RSMI_COMPUTE_PARTITION_INVALID, "UNKNOWN"}, {RSMI_COMPUTE_PARTITION_CPX, "CPX"}, @@ -2046,7 +2046,7 @@ mapRSMIToStringComputePartitionTypes { {RSMI_COMPUTE_PARTITION_QPX, "QPX"} }; -std::map +static const std::map mapRSMIToStringMemoryPartitionTypes { {RSMI_MEMORY_PARTITION_UNKNOWN, "UNKNOWN"}, {RSMI_MEMORY_PARTITION_NPS1, "NPS1"}, @@ -2055,7 +2055,7 @@ mapRSMIToStringMemoryPartitionTypes { {RSMI_MEMORY_PARTITION_NPS8, "NPS8"} }; -std::map +static const std::map mapStringToMemoryPartitionTypes { {"NPS1", RSMI_MEMORY_PARTITION_NPS1}, {"NPS2", RSMI_MEMORY_PARTITION_NPS2}, diff --git a/projects/amdsmi/rocm_smi/src/rocm_smi_device.cc b/projects/amdsmi/rocm_smi/src/rocm_smi_device.cc index 6e79c29b3e..305364b6e2 100755 --- a/projects/amdsmi/rocm_smi/src/rocm_smi_device.cc +++ b/projects/amdsmi/rocm_smi/src/rocm_smi_device.cc @@ -336,7 +336,7 @@ static const std::map kDevPerfLvlMap = { {RSMI_DEV_PERF_LEVEL_UNKNOWN, kDevPerfLevelUnknownStr}, }; -static std::map kDevInfoVarTypeToRSMIVariant = { +static const std::map kDevInfoVarTypeToRSMIVariant = { // rsmi_memory_type_t {kDevMemTotGTT, RSMI_MEM_TYPE_GTT}, {kDevMemTotVisVRAM, RSMI_MEM_TYPE_VIS_VRAM}, @@ -391,6 +391,89 @@ static std::map kDevInfoVarTypeToRSMIVariant = { {kDevDFCountersAvailable, RSMI_EVNT_GRP_XGMI} }; +const std::map +Device::devInfoTypesStrings = { + {kDevPerfLevel, "kDevPerfLevel"}, + {kDevOverDriveLevel, "kDevOverDriveLevel"}, + {kDevMemOverDriveLevel, "kDevMemOverDriveLevel"}, + {kDevDevID, "kDevDevID"}, + {kDevXGMIPhysicalID, "kDevXGMIPhysicalID"}, + {kDevDevRevID, "kDevDevRevID"}, + {kDevDevProdName, "kDevDevProdName"}, + {kDevBoardInfo, "kDevBoardInfo"}, + {kDevDevProdNum, "kDevDevProdNum"}, + {kDevVendorID, "kDevVendorID"}, + {kDevSubSysDevID, "kDevSubSysDevID"}, + {kDevSubSysVendorID, "kDevSubSysVendorID"}, + {kDevGPUMClk, "kDevGPUMClk"}, + {kDevGPUSClk, "kDevGPUSClk"}, + {kDevDCEFClk, "kDevDCEFClk"}, + {kDevFClk, "kDevFClk"}, + {kDevSOCClk, "kDevSOCClk"}, + {kDevPCIEClk, "kDevPCIEClk"}, + {kDevPowerProfileMode, "kDevPowerProfileMode"}, + {kDevUsage, "kDevUsage"}, + {kDevPowerODVoltage, "kDevPowerODVoltage"}, + {kDevVBiosVer, "kDevVBiosVer"}, + {kDevPCIEThruPut, "kDevPCIEThruPut"}, + {kDevErrCntSDMA, "kDevErrCntSDMA"}, + {kDevErrCntUMC, "kDevErrCntUMC"}, + {kDevErrCntGFX, "kDevErrCntGFX"}, + {kDevErrCntMMHUB, "kDevErrCntMMHUB"}, + {kDevErrCntPCIEBIF, "kDevErrCntPCIEBIF"}, + {kDevErrCntHDP, "kDevErrCntHDP"}, + {kDevErrCntXGMIWAFL, "kDevErrCntXGMIWAFL"}, + {kDevErrCntFeatures, "kDevErrCntFeatures"}, + {kDevErrRASSchema, "kDevErrRASSchema"}, + {kDevErrTableVersion, "kDevErrTableVersion"}, + {kDevMemTotGTT, "kDevMemTotGTT"}, + {kDevMemTotVisVRAM, "kDevMemTotVisVRAM"}, + {kDevMemTotVRAM, "kDevMemTotVRAM"}, + {kDevMemUsedGTT, "kDevMemUsedGTT"}, + {kDevMemUsedVisVRAM, "kDevMemUsedVisVRAM"}, + {kDevMemUsedVRAM, "kDevMemUsedVRAM"}, + {kDevVramVendor, "kDevVramVendor"}, + {kDevPCIEReplayCount, "kDevPCIEReplayCount"}, + {kDevUniqueId, "kDevUniqueId"}, + {kDevDFCountersAvailable, "kDevDFCountersAvailable"}, + {kDevMemBusyPercent, "kDevMemBusyPercent"}, + {kDevXGMIError, "kDevXGMIError"}, + {kDevFwVersionAsd, "kDevFwVersionAsd"}, + {kDevFwVersionCe, "kDevFwVersionCe"}, + {kDevFwVersionDmcu, "kDevFwVersionDmcu"}, + {kDevFwVersionMc, "kDevFwVersionMc"}, + {kDevFwVersionMe, "kDevFwVersionMe"}, + {kDevFwVersionMec, "kDevFwVersionMec"}, + {kDevFwVersionMec2, "kDevFwVersionMec2"}, + {kDevFwVersionMes, "kDevFwVersionMes"}, + {kDevFwVersionMesKiq, "kDevFwVersionMesKiq"}, + {kDevFwVersionPfp, "kDevFwVersionPfp"}, + {kDevFwVersionRlc, "kDevFwVersionRlc"}, + {kDevFwVersionRlcSrlc, "kDevFwVersionRlcSrlc"}, + {kDevFwVersionRlcSrlg, "kDevFwVersionRlcSrlg"}, + {kDevFwVersionRlcSrls, "kDevFwVersionRlcSrls"}, + {kDevFwVersionSdma, "kDevFwVersionSdma"}, + {kDevFwVersionSdma2, "kDevFwVersionSdma2"}, + {kDevFwVersionSmc, "kDevFwVersionSmc"}, + {kDevFwVersionSos, "kDevFwVersionSos"}, + {kDevFwVersionTaRas, "kDevFwVersionTaRas"}, + {kDevFwVersionTaXgmi, "kDevFwVersionTaXgmi"}, + {kDevFwVersionUvd, "kDevFwVersionUvd"}, + {kDevFwVersionVce, "kDevFwVersionVce"}, + {kDevFwVersionVcn, "kDevFwVersionVcn"}, + {kDevSerialNumber, "kDevSerialNumber"}, + {kDevMemPageBad, "kDevMemPageBad"}, + {kDevNumaNode, "kDevNumaNode"}, + {kDevGpuMetrics, "kDevGpuMetrics"}, + {kDevPmMetrics, "kDevPmMetrics"}, + {kDevRegMetrics, "kDevRegMetrics"}, + {kDevGpuReset, "kDevGpuReset"}, + {kDevAvailableComputePartition, "kDevAvailableComputePartition"}, + {kDevComputePartition, "kDevComputePartition"}, + {kDevMemoryPartition, "kDevMemoryPartition"}, + {kDevPCieVendorID, "kDevPCieVendorID"}, +}; + static const std::map kDevFuncDependsMap = { // Functions with only mandatory dependencies {"rsmi_dev_vram_vendor_get", {{kDevVramVendorFName}, {}}}, @@ -644,7 +727,7 @@ int Device::openSysfsFileStream(DevInfoTypes type, T *fs, const char *str) { if (ret != 0) { ss << __PRETTY_FUNCTION__ << " | Issue: File did not exist - SYSFS file (" << sysfs_path - << ") for DevInfoInfoType (" << RocmSMI::devInfoTypesStrings.at(type) + << ") for DevInfoInfoType (" << devInfoTypesStrings.at(type) << "), returning " << std::to_string(ret); LOG_ERROR(ss); return ret; @@ -653,7 +736,7 @@ int Device::openSysfsFileStream(DevInfoTypes type, T *fs, const char *str) { ss << __PRETTY_FUNCTION__ << " | Issue: File is not a regular file - SYSFS file (" << sysfs_path << ") for " - << "DevInfoInfoType (" << RocmSMI::devInfoTypesStrings.at(type) << ")," + << "DevInfoInfoType (" << devInfoTypesStrings.at(type) << ")," << " returning ENOENT (" << std::strerror(ENOENT) << ")"; LOG_ERROR(ss); return ENOENT; @@ -664,7 +747,7 @@ int Device::openSysfsFileStream(DevInfoTypes type, T *fs, const char *str) { if (!fs->is_open()) { ss << __PRETTY_FUNCTION__ << " | Issue: Could not open - SYSFS file (" << sysfs_path << ") for " - << "DevInfoInfoType (" << RocmSMI::devInfoTypesStrings.at(type) << "), " + << "DevInfoInfoType (" << devInfoTypesStrings.at(type) << "), " << ", returning " << std::to_string(errno) << " (" << std::strerror(errno) << ")"; LOG_ERROR(ss); @@ -673,7 +756,7 @@ int Device::openSysfsFileStream(DevInfoTypes type, T *fs, const char *str) { ss << __PRETTY_FUNCTION__ << " | Successfully opened SYSFS file (" << sysfs_path - << ") for DevInfoInfoType (" << RocmSMI::devInfoTypesStrings.at(type) + << ") for DevInfoInfoType (" << devInfoTypesStrings.at(type) << ")"; LOG_INFO(ss); return 0; @@ -690,7 +773,7 @@ int Device::readDebugInfoStr(DevInfoTypes type, std::string *retStr) { ret = openDebugFileStream(type, &fs); if (ret != 0) { ss << "Could not read debugInfoStr for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type)<< "), returning " + << devInfoTypesStrings.at(type)<< "), returning " << std::to_string(ret); LOG_ERROR(ss); return ret; @@ -704,7 +787,7 @@ int Device::readDebugInfoStr(DevInfoTypes type, std::string *retStr) { fs.close(); ss << "Successfully read debugInfoStr for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type)<< "), retString= " << *retStr; + << devInfoTypesStrings.at(type)<< "), retString= " << *retStr; LOG_INFO(ss); return 0; @@ -720,7 +803,7 @@ int Device::readDevInfoStr(DevInfoTypes type, std::string *retStr) { ret = openSysfsFileStream(type, &fs); if (ret != 0) { ss << "Could not read device info string for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << "), returning " + << devInfoTypesStrings.at(type) << "), returning " << std::to_string(ret); LOG_ERROR(ss); return ret; @@ -729,8 +812,8 @@ int Device::readDevInfoStr(DevInfoTypes type, std::string *retStr) { fs >> *retStr; fs.close(); ss << __PRETTY_FUNCTION__ - << "Successfully read device info string for DevInfoType (" + - RocmSMI::devInfoTypesStrings.at(type) + "): " + *retStr + << "Successfully read device info string for DevInfoType (" << + devInfoTypesStrings.at(type) << "): " + *retStr << " | " << (fs.is_open() ? " File stream is opened" : " File stream is closed") << " | " << (fs.bad() ? "[ERROR] Bad read operation" : @@ -765,7 +848,7 @@ int Device::writeDevInfoStr(DevInfoTypes type, std::string valStr, fs.close(); ss << __PRETTY_FUNCTION__ << " | Issue: Could not open fileStream; " << "Could not write device info string (" << valStr - << ") for DevInfoType (" << RocmSMI::devInfoTypesStrings.at(type) + << ") for DevInfoType (" << devInfoTypesStrings.at(type) << "), returning " << std::to_string(ret); LOG_ERROR(ss); return ret; @@ -776,7 +859,7 @@ int Device::writeDevInfoStr(DevInfoTypes type, std::string valStr, fs.flush(); fs.close(); ss << "Successfully wrote device info string (" << valStr - << ") for DevInfoType (" << RocmSMI::devInfoTypesStrings.at(type) + << ") for DevInfoType (" << devInfoTypesStrings.at(type) << "), returning RSMI_STATUS_SUCCESS"; LOG_INFO(ss); ret = RSMI_STATUS_SUCCESS; @@ -790,7 +873,7 @@ int Device::writeDevInfoStr(DevInfoTypes type, std::string valStr, fs.close(); ss << __PRETTY_FUNCTION__ << " | Issue: Could not write to file; " << "Could not write device info string (" << valStr - << ") for DevInfoType (" << RocmSMI::devInfoTypesStrings.at(type) + << ") for DevInfoType (" << devInfoTypesStrings.at(type) << "), returning " << getRSMIStatusString(ErrnoToRsmiStatus(ret)); ss << " | " << (fs.is_open() ? "[ERROR] File stream open" : @@ -877,14 +960,14 @@ int Device::readDevInfoLine(DevInfoTypes type, std::string *line) { ret = openSysfsFileStream(type, &fs); if (ret != 0) { ss << "Could not read DevInfoLine for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << ")"; + << devInfoTypesStrings.at(type) << ")"; LOG_ERROR(ss); return ret; } std::getline(fs, *line); ss << "Successfully read DevInfoLine for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << "), returning *line = " + << devInfoTypesStrings.at(type) << "), returning *line = " << *line; LOG_INFO(ss); @@ -903,7 +986,7 @@ int Device::readDevInfoBinary(DevInfoTypes type, std::size_t b_size, ptr = fopen(sysfs_path.c_str(), "rb"); if (!ptr) { ss << "Could not read DevInfoBinary for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << ")" + << devInfoTypesStrings.at(type) << ")" << " - SYSFS (" << sysfs_path << ")" << ", returning " << std::to_string(errno) << " (" << std::strerror(errno) << ")"; @@ -915,7 +998,7 @@ int Device::readDevInfoBinary(DevInfoTypes type, std::size_t b_size, fclose(ptr); if ((num*b_size) != b_size) { ss << "Could not read DevInfoBinary for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << ") - SYSFS (" + << devInfoTypesStrings.at(type) << ") - SYSFS (" << sysfs_path << "), binary size error; " << "[buff: " << p_binary_data @@ -929,7 +1012,7 @@ int Device::readDevInfoBinary(DevInfoTypes type, std::size_t b_size, return ENOENT; } ss << "Successfully read DevInfoBinary for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << ") - SYSFS (" + << devInfoTypesStrings.at(type) << ") - SYSFS (" << sysfs_path << "), returning binaryData = " << p_binary_data << "; byte_size = " << std::dec << static_cast(b_size); @@ -961,7 +1044,7 @@ int Device::readDevInfoMultiLineStr(DevInfoTypes type, if (retVec->empty()) { ss << "Read devInfoMultiLineStr for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << ")" + << devInfoTypesStrings.at(type) << ")" << ", but contained no string lines"; LOG_ERROR(ss); return ENXIO; @@ -979,12 +1062,12 @@ int Device::readDevInfoMultiLineStr(DevInfoTypes type, if (!allLines.empty()) { ss << "Successfully read devInfoMultiLineStr for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << ") " + << devInfoTypesStrings.at(type) << ") " << ", returning lines read = " << allLines; LOG_INFO(ss); } else { ss << "Read devInfoMultiLineStr for DevInfoType (" - << RocmSMI::devInfoTypesStrings.at(type) << ")" + << devInfoTypesStrings.at(type) << ")" << ", but lines were empty"; LOG_INFO(ss); return ENXIO; diff --git a/projects/amdsmi/rocm_smi/src/rocm_smi_gpu_metrics.cc b/projects/amdsmi/rocm_smi/src/rocm_smi_gpu_metrics.cc index 37b6577625..f6d7f80e5f 100755 --- a/projects/amdsmi/rocm_smi/src/rocm_smi_gpu_metrics.cc +++ b/projects/amdsmi/rocm_smi/src/rocm_smi_gpu_metrics.cc @@ -368,7 +368,7 @@ GpuMetricsBasePtr amdgpu_metrics_factory(AMDGpuMetricVersionFlags_t gpu_metric_v << " |"; LOG_TRACE(ostrstream); - return (amd_gpu_metrics_factory_table[gpu_metric_version]); + return (amd_gpu_metrics_factory_table.at(gpu_metric_version)); } ostrstream << __PRETTY_FUNCTION__ diff --git a/projects/amdsmi/rocm_smi/src/rocm_smi_main.cc b/projects/amdsmi/rocm_smi/src/rocm_smi_main.cc index 612482aee0..c078712e53 100755 --- a/projects/amdsmi/rocm_smi/src/rocm_smi_main.cc +++ b/projects/amdsmi/rocm_smi/src/rocm_smi_main.cc @@ -57,10 +57,8 @@ #include #include #include -#include #include #include -#include #include "rocm_smi/rocm_smi.h" #include "rocm_smi/rocm_smi_device.h" @@ -79,91 +77,6 @@ static const char *kDeviceNamePrefix = "card"; static const char *kAMDMonitorTypes[] = {"radeon", "amdgpu", ""}; -static const std::string amdSMI = "amd::smi::"; -const std::map -amd::smi::RocmSMI::devInfoTypesStrings = { - {amd::smi::kDevPerfLevel, amdSMI + "kDevPerfLevel"}, - {amd::smi::kDevOverDriveLevel, amdSMI + "kDevOverDriveLevel"}, - {amd::smi::kDevMemOverDriveLevel, amdSMI + "kDevMemOverDriveLevel"}, - {amd::smi::kDevDevID, amdSMI + "kDevDevID"}, - {amd::smi::kDevXGMIPhysicalID, amdSMI + "kDevXGMIPhysicalID"}, - {amd::smi::kDevDevRevID, amdSMI + "kDevDevRevID"}, - {amd::smi::kDevDevProdName, amdSMI + "kDevDevProdName"}, - {amd::smi::kDevBoardInfo, amdSMI + "kDevBoardInfo"}, - {amd::smi::kDevDevProdNum, amdSMI + "kDevDevProdNum"}, - {amd::smi::kDevVendorID, amdSMI + "kDevVendorID"}, - {amd::smi::kDevSubSysDevID, amdSMI + "kDevSubSysDevID"}, - {amd::smi::kDevSubSysVendorID, amdSMI + "kDevSubSysVendorID"}, - {amd::smi::kDevGPUMClk, amdSMI + "kDevGPUMClk"}, - {amd::smi::kDevGPUSClk, amdSMI + "kDevGPUSClk"}, - {amd::smi::kDevDCEFClk, amdSMI + "kDevDCEFClk"}, - {amd::smi::kDevFClk, amdSMI + "kDevFClk"}, - {amd::smi::kDevSOCClk, amdSMI + "kDevSOCClk"}, - {amd::smi::kDevPCIEClk, amdSMI + "kDevPCIEClk"}, - {amd::smi::kDevPowerProfileMode, amdSMI + "kDevPowerProfileMode"}, - {amd::smi::kDevUsage, amdSMI + "kDevUsage"}, - {amd::smi::kDevPowerODVoltage, amdSMI + "kDevPowerODVoltage"}, - {amd::smi::kDevVBiosVer, amdSMI + "kDevVBiosVer"}, - {amd::smi::kDevPCIEThruPut, amdSMI + "kDevPCIEThruPut"}, - {amd::smi::kDevErrCntSDMA, amdSMI + "kDevErrCntSDMA"}, - {amd::smi::kDevErrCntUMC, amdSMI + "kDevErrCntUMC"}, - {amd::smi::kDevErrCntGFX, amdSMI + "kDevErrCntGFX"}, - {amd::smi::kDevErrCntMMHUB, amdSMI + "kDevErrCntMMHUB"}, - {amd::smi::kDevErrCntPCIEBIF, amdSMI + "kDevErrCntPCIEBIF"}, - {amd::smi::kDevErrCntHDP, amdSMI + "kDevErrCntHDP"}, - {amd::smi::kDevErrCntXGMIWAFL, amdSMI + "kDevErrCntXGMIWAFL"}, - {amd::smi::kDevErrCntFeatures, amdSMI + "kDevErrCntFeatures"}, - {amd::smi::kDevErrRASSchema, amdSMI + "kDevErrRASSchema"}, - {amd::smi::kDevErrTableVersion, amdSMI + "kDevErrTableVersion"}, - {amd::smi::kDevMemTotGTT, amdSMI + "kDevMemTotGTT"}, - {amd::smi::kDevMemTotVisVRAM, amdSMI + "kDevMemTotVisVRAM"}, - {amd::smi::kDevMemTotVRAM, amdSMI + "kDevMemTotVRAM"}, - {amd::smi::kDevMemUsedGTT, amdSMI + "kDevMemUsedGTT"}, - {amd::smi::kDevMemUsedVisVRAM, amdSMI + "kDevMemUsedVisVRAM"}, - {amd::smi::kDevMemUsedVRAM, amdSMI + "kDevMemUsedVRAM"}, - {amd::smi::kDevVramVendor, amdSMI + "kDevVramVendor"}, - {amd::smi::kDevPCIEReplayCount, amdSMI + "kDevPCIEReplayCount"}, - {amd::smi::kDevUniqueId, amdSMI + "kDevUniqueId"}, - {amd::smi::kDevDFCountersAvailable, amdSMI + "kDevDFCountersAvailable"}, - {amd::smi::kDevMemBusyPercent, amdSMI + "kDevMemBusyPercent"}, - {amd::smi::kDevXGMIError, amdSMI + "kDevXGMIError"}, - {amd::smi::kDevFwVersionAsd, amdSMI + "kDevFwVersionAsd"}, - {amd::smi::kDevFwVersionCe, amdSMI + "kDevFwVersionCe"}, - {amd::smi::kDevFwVersionDmcu, amdSMI + "kDevFwVersionDmcu"}, - {amd::smi::kDevFwVersionMc, amdSMI + "kDevFwVersionMc"}, - {amd::smi::kDevFwVersionMe, amdSMI + "kDevFwVersionMe"}, - {amd::smi::kDevFwVersionMec, amdSMI + "kDevFwVersionMec"}, - {amd::smi::kDevFwVersionMec2, amdSMI + "kDevFwVersionMec2"}, - {amd::smi::kDevFwVersionMes, amdSMI + "kDevFwVersionMes"}, - {amd::smi::kDevFwVersionMesKiq, amdSMI + "kDevFwVersionMesKiq"}, - {amd::smi::kDevFwVersionPfp, amdSMI + "kDevFwVersionPfp"}, - {amd::smi::kDevFwVersionRlc, amdSMI + "kDevFwVersionRlc"}, - {amd::smi::kDevFwVersionRlcSrlc, amdSMI + "kDevFwVersionRlcSrlc"}, - {amd::smi::kDevFwVersionRlcSrlg, amdSMI + "kDevFwVersionRlcSrlg"}, - {amd::smi::kDevFwVersionRlcSrls, amdSMI + "kDevFwVersionRlcSrls"}, - {amd::smi::kDevFwVersionSdma, amdSMI + "kDevFwVersionSdma"}, - {amd::smi::kDevFwVersionSdma2, amdSMI + "kDevFwVersionSdma2"}, - {amd::smi::kDevFwVersionSmc, amdSMI + "kDevFwVersionSmc"}, - {amd::smi::kDevFwVersionSos, amdSMI + "kDevFwVersionSos"}, - {amd::smi::kDevFwVersionTaRas, amdSMI + "kDevFwVersionTaRas"}, - {amd::smi::kDevFwVersionTaXgmi, amdSMI + "kDevFwVersionTaXgmi"}, - {amd::smi::kDevFwVersionUvd, amdSMI + "kDevFwVersionUvd"}, - {amd::smi::kDevFwVersionVce, amdSMI + "kDevFwVersionVce"}, - {amd::smi::kDevFwVersionVcn, amdSMI + "kDevFwVersionVcn"}, - {amd::smi::kDevSerialNumber, amdSMI + "kDevSerialNumber"}, - {amd::smi::kDevMemPageBad, amdSMI + "kDevMemPageBad"}, - {amd::smi::kDevNumaNode, amdSMI + "kDevNumaNode"}, - {amd::smi::kDevGpuMetrics, amdSMI + "kDevGpuMetrics"}, - {amd::smi::kDevPmMetrics, amdSMI + "kDevPmMetrics"}, - {amd::smi::kDevRegMetrics, amdSMI + "kDevRegMetrics"}, - {amd::smi::kDevGpuReset, amdSMI + "kDevGpuReset"}, - {amd::smi::kDevAvailableComputePartition, amdSMI + - "kDevAvailableComputePartition"}, - {amd::smi::kDevComputePartition, amdSMI + "kDevComputePartition"}, - {amd::smi::kDevMemoryPartition, amdSMI + "kDevMemoryPartition"}, - {amd::smi::kDevPCieVendorID, amdSMI + "kDevPCieVendorID"}, -}; - namespace amd { namespace smi { @@ -647,7 +560,7 @@ std::string RocmSMI::getRSMIEnvVarInfo(void) { for (auto it=env_vars_.enum_overrides.begin(); it != env_vars_.enum_overrides.end(); ++it) { DevInfoTypes type = static_cast(*it); - ss << (std::to_string(*it) + " (" + devInfoTypesStrings.at(type) + ")"); + ss << (std::to_string(*it) + " (" + Device::devInfoTypesStrings.at(type) + ")"); auto temp_it = it; if(++temp_it != env_vars_.enum_overrides.end()) { ss << ", ";