Profiler - Align SMI and Profiler indices

Change-Id: If2bb850ffd1c1b8b16a8f5963a0f6971f82d4863
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: eff955fdf7]
Dieser Commit ist enthalten in:
Galantsev, Dmitrii
2025-04-16 21:00:19 +00:00
committet von Galantsev, Dmitrii
Ursprung 71c654b0ee
Commit 0d352c515e
8 geänderte Dateien mit 164 neuen und 45 gelöschten Zeilen
+2
Datei anzeigen
@@ -172,6 +172,7 @@ typedef enum {
RDC_FI_REV_ID, //!<
RDC_FI_TARGET_GRAPHICS_VERSION, //!< Target graphics version
RDC_FI_NUM_OF_COMPUTE_UNITS, //!< Number of compute units
RDC_FI_UUID, //!< Device UUID
/**
* @brief Frequency related fields
@@ -342,6 +343,7 @@ typedef enum {
RDC_FI_PROF_CPF_CPF_TCIU_IDLE,
RDC_FI_PROF_CPF_CPF_TCIU_STALL,
RDC_FI_PROF_SIMD_UTILIZATION,
RDC_FI_PROF_UUID,
/**
* @brief Raw XGMI counter events
@@ -56,7 +56,8 @@ class RdcRocpBase {
* @retval ::ROCMTOOLS_STATUS_SUCCESS The function has been executed
* successfully.
*/
rdc_status_t rocp_lookup(rdc_gpu_field_t gpu_field, double* value);
rdc_status_t rocp_lookup(rdc_gpu_field_t gpu_field, rdc_field_value_data* value,
rdc_field_type_t* type);
const char* get_field_id_from_name(rdc_field_t);
const std::vector<rdc_field_t> get_field_ids();
@@ -69,11 +70,17 @@ class RdcRocpBase {
static const uint32_t collection_duration_us_k = 10000;
double read_feature(rocprofiler_record_counter_t* record, uint32_t gpu_index);
/**
* @brief By default all profiler values are read as doubles
*/
double run_profiler(uint32_t gpu_index, rdc_field_t field);
void map_smi_to_profiler_by_uuid();
std::vector<rocprofiler_agent_v0_t> agents = {};
std::vector<std::shared_ptr<CounterSampler>> samplers = {};
std::map<rdc_field_t, const char*> field_to_metric = {};
std::map<uint32_t, uint32_t> smi_to_profiler_map = {};
// these fields must be divided by time passed
std::unordered_set<rdc_field_t> eval_fields = {