From 7b03a3fc77988b0b6e7ecf7af924997d03223cc0 Mon Sep 17 00:00:00 2001 From: Hailong Liu Date: Mon, 29 Aug 2022 17:01:19 +0800 Subject: [PATCH] mservice/jitter: Change the data to delta Signed-off-by: Hailong Liu --- .../mservice/master/modules/mod_jitter.c | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/source/tools/monitor/mservice/master/modules/mod_jitter.c b/source/tools/monitor/mservice/master/modules/mod_jitter.c index b40a22e5..3f6e2709 100644 --- a/source/tools/monitor/mservice/master/modules/mod_jitter.c +++ b/source/tools/monitor/mservice/master/modules/mod_jitter.c @@ -40,6 +40,7 @@ struct jitter_shm { }; static struct jitter_shm *jitshm = NULL; +struct jitter_shm prev_jitshm; struct exten_sum_idx sum_ex; static struct mod_info jitter_info[] = { /* 0~9 */ @@ -109,7 +110,7 @@ static int check_and_init_shm(void) jitshm_inited = 1; jitshm = (struct jitter_shm *)p; - + prev_jitshm = *jitshm; return 0; shm_fail: @@ -160,21 +161,29 @@ void print_jitter_stats(struct module *mod) { int i, pos; struct sched_jit_summary *jitsum[NR_MODS]; - memset(g_buf, 0, BUF_SIZE); + long less10ms, less50ms, less100ms, less500ms, less1s, plus1s; + memset(g_buf, 0, BUF_SIZE); pos = 0; jitsum[0] = &jitshm->nosched; jitsum[1] = &jitshm->irqoff; jitsum[2] = &jitshm->rqslow; for (i = 0; i < NR_MODS; i++) { + less10ms = jitsum[0]->less10ms - prev_jitshm.nosched.less10ms; + less50ms = jitsum[0]->less50ms - prev_jitshm.nosched.less50ms; + less100ms = jitsum[0]->less100ms - prev_jitshm.nosched.less100ms; + less500ms = jitsum[0]->less500ms - prev_jitshm.nosched.less500ms; + less1s = jitsum[0]->less1s - prev_jitshm.nosched.less1s; + plus1s = jitsum[0]->plus1s - prev_jitshm.nosched.plus1s; pos += snprintf(g_buf + pos, BUF_SIZE - pos, "%s=%ld,%llu,%ld,%llu,%ld,%ld,%ld,%ld,%ld,%ld, %d" ITEM_SPLIT, jit_mod[i], jitsum[i]->num, jitsum[i]->total, sum_ex.sum[i].delta_num, sum_ex.sum[i].delta_total, - jitsum[i]->less10ms, jitsum[i]->less50ms, - jitsum[i]->less100ms, jitsum[i]->less500ms, - jitsum[i]->less1s, jitsum[i]->plus1s,pos); + less10ms<0?0:less10ms, less50ms<0?0:less50ms, + less100ms<0?0:less100ms, less500ms<0?0:less500ms, + less1s<0?0:less1s, plus1s<0?0:plus1s, pos); } + prev_jitshm = *jitshm; set_mod_record(mod, g_buf); } @@ -196,12 +205,12 @@ set_jitter_record(struct module *mod, double st_array[], st_array[0] = cur_array[0]; st_array[1] = cur_array[1]; - st_array[4] = cur_array[4]; - st_array[5] = cur_array[5]; - st_array[6] = cur_array[6]; - st_array[7] = cur_array[7]; - st_array[8] = cur_array[8]; - st_array[9] = cur_array[9]; + st_array[4] = cur_array[4] - pre_array[4]; /* DELTA <10ms */ + st_array[5] = cur_array[5] - pre_array[5]; /* DELTA <50ms */ + st_array[6] = cur_array[6] - pre_array[6]; /* DELTA <100ms */ + st_array[7] = cur_array[7] - pre_array[7]; /* DELTA <500ms */ + st_array[8] = cur_array[8] - pre_array[8]; /* DELTA <1s */ + st_array[9] = cur_array[9] - pre_array[9]; /* DELTA >1ms */ if (cur_array[0] >= pre_array[0]) st_array[2] = cur_array[0] - pre_array[0]; @@ -213,10 +222,9 @@ set_jitter_record(struct module *mod, double st_array[], st_array[3] = -1; idx = sum_ex.idx; - printf("jit[%d]:deltaN=%f, deltaT=%f\n", idx, st_array[2], st_array[3]); sum_ex.sum[idx].delta_num = st_array[2]; sum_ex.sum[idx].delta_total = st_array[3]; - sum_ex.idx = (idx+1)%(mod->n_item); + sum_ex.idx = (idx+1)%(mod->n_item); //pre_array[0] = st_array[0]; //pre_array[1] = st_array[1]; } -- Gitee