SRS processing time measurement
This commit is contained in:
@@ -1316,8 +1316,11 @@ void handle_nr_srs_measurements(const module_id_t module_id,
|
|||||||
NR_UE_UL_BWP_t *current_BWP = &UE->current_UL_BWP;
|
NR_UE_UL_BWP_t *current_BWP = &UE->current_UL_BWP;
|
||||||
sched_ctrl->srs_feedback.sri = NR_SRS_SRI_0;
|
sched_ctrl->srs_feedback.sri = NR_SRS_SRI_0;
|
||||||
|
|
||||||
|
start_meas(&nr_mac->nr_srs_ri_computation_timer);
|
||||||
nr_srs_ri_computation(&nr_srs_channel_iq_matrix, current_BWP, &sched_ctrl->srs_feedback.ul_ri);
|
nr_srs_ri_computation(&nr_srs_channel_iq_matrix, current_BWP, &sched_ctrl->srs_feedback.ul_ri);
|
||||||
|
stop_meas(&nr_mac->nr_srs_ri_computation_timer);
|
||||||
|
|
||||||
|
start_meas(&nr_mac->nr_srs_tpmi_computation_timer);
|
||||||
sched_ctrl->srs_feedback.tpmi = nr_srs_tpmi_estimation(current_BWP->pusch_Config,
|
sched_ctrl->srs_feedback.tpmi = nr_srs_tpmi_estimation(current_BWP->pusch_Config,
|
||||||
current_BWP->transform_precoding,
|
current_BWP->transform_precoding,
|
||||||
nr_srs_channel_iq_matrix.channel_matrix,
|
nr_srs_channel_iq_matrix.channel_matrix,
|
||||||
@@ -1327,6 +1330,7 @@ void handle_nr_srs_measurements(const module_id_t module_id,
|
|||||||
nr_srs_channel_iq_matrix.prg_size,
|
nr_srs_channel_iq_matrix.prg_size,
|
||||||
nr_srs_channel_iq_matrix.num_prgs,
|
nr_srs_channel_iq_matrix.num_prgs,
|
||||||
sched_ctrl->srs_feedback.ul_ri);
|
sched_ctrl->srs_feedback.ul_ri);
|
||||||
|
stop_meas(&nr_mac->nr_srs_tpmi_computation_timer);
|
||||||
|
|
||||||
sprintf(stats->srs_stats, "UL-RI %d, TPMI %d", sched_ctrl->srs_feedback.ul_ri + 1, sched_ctrl->srs_feedback.tpmi);
|
sprintf(stats->srs_stats, "UL-RI %d, TPMI %d", sched_ctrl->srs_feedback.ul_ri + 1, sched_ctrl->srs_feedback.tpmi);
|
||||||
|
|
||||||
|
|||||||
@@ -69,6 +69,8 @@ void *nrmac_stats_thread(void *arg) {
|
|||||||
p += print_meas_log(&gNB->schedule_dlsch, "dlsch scheduler", NULL, NULL, p, end - p);
|
p += print_meas_log(&gNB->schedule_dlsch, "dlsch scheduler", NULL, NULL, p, end - p);
|
||||||
p += print_meas_log(&gNB->rlc_data_req, "rlc_data_req", NULL, NULL, p, end - p);
|
p += print_meas_log(&gNB->rlc_data_req, "rlc_data_req", NULL, NULL, p, end - p);
|
||||||
p += print_meas_log(&gNB->rlc_status_ind, "rlc_status_ind", NULL, NULL, p, end - p);
|
p += print_meas_log(&gNB->rlc_status_ind, "rlc_status_ind", NULL, NULL, p, end - p);
|
||||||
|
p += print_meas_log(&gNB->nr_srs_ri_computation_timer, "UL-RI computation time", NULL, NULL, p, end - p);
|
||||||
|
p += print_meas_log(&gNB->nr_srs_tpmi_computation_timer, "UL-TPMI computation time", NULL, NULL, p, end - p);
|
||||||
fwrite(output, p - output, 1, file);
|
fwrite(output, p - output, 1, file);
|
||||||
fflush(file);
|
fflush(file);
|
||||||
sleep(1);
|
sleep(1);
|
||||||
|
|||||||
@@ -780,6 +780,10 @@ typedef struct gNB_MAC_INST_s {
|
|||||||
time_stats_t rlc_data_req;
|
time_stats_t rlc_data_req;
|
||||||
/// processing time of rlc_status_ind
|
/// processing time of rlc_status_ind
|
||||||
time_stats_t rlc_status_ind;
|
time_stats_t rlc_status_ind;
|
||||||
|
/// processing time of nr_srs_ri_computation
|
||||||
|
time_stats_t nr_srs_ri_computation_timer;
|
||||||
|
/// processing time of nr_srs_tpmi_estimation
|
||||||
|
time_stats_t nr_srs_tpmi_computation_timer;
|
||||||
/// processing time of eNB MCH scheduler
|
/// processing time of eNB MCH scheduler
|
||||||
time_stats_t schedule_mch;
|
time_stats_t schedule_mch;
|
||||||
/// processing time of eNB ULSCH reception
|
/// processing time of eNB ULSCH reception
|
||||||
|
|||||||
Reference in New Issue
Block a user