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:
committet von
Galantsev, Dmitrii
Ursprung
71c654b0ee
Commit
0d352c515e
@@ -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 = {
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren