From bf3f0406a71f066bee2eff87976286878fce8a05 Mon Sep 17 00:00:00 2001 From: Utz-Uwe Haus <uhaus@hpe.com> Date: Thu, 15 Jul 2021 14:15:38 +0000 Subject: [PATCH] Add statistics counters for VSM messages currently we don't actually ever send any, but ... --- include/maestro/i_statistics.h | 8 ++++---- maestro/pool_client.c | 2 ++ maestro/pool_manager.c | 1 + maestro/pool_manager_protocol.c | 6 ++++++ maestro/statistics.c | 8 ++++---- 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/include/maestro/i_statistics.h b/include/maestro/i_statistics.h index 8146c1a5..ade827fb 100644 --- a/include/maestro/i_statistics.h +++ b/include/maestro/i_statistics.h @@ -186,10 +186,10 @@ mstro_stats_report_csv(FILE *dst); /* OFI */ -#define MSTRO_STATS_L_PC_VSM_IN "pc-num-vsm-in" -#define MSTRO_STATS_L_PC_VSM_OUT "pc-num-vsm-out" -#define MSTRO_STATS_L_PM_VSM_IN "pm-num-vsm-in" -#define MSTRO_STATS_L_PM_VSM_OUT "pm-num-vsm-out" +#define MSTRO_STATS_L_PC_NUM_VSM_IN "pc-num-vsm-in" +#define MSTRO_STATS_L_PC_NUM_VSM_OUT "pc-num-vsm-out" +#define MSTRO_STATS_L_PM_NUM_VSM_IN "pm-num-vsm-in" +#define MSTRO_STATS_L_PM_NUM_VSM_OUT "pm-num-vsm-out" /**@}*/ diff --git a/maestro/pool_client.c b/maestro/pool_client.c index b4ea5deb..a90c09df 100644 --- a/maestro/pool_client.c +++ b/maestro/pool_client.c @@ -8,6 +8,7 @@ #include "../transport/transport.h" #include "transport/transport_rdma.h" #include "maestro/i_ofi.h" +#include "maestro/i_statistics.h" #include "i_subscription_registry.h" #include <unistd.h> @@ -760,6 +761,7 @@ mstro_pc_handle_msg(const struct mstro_msg_envelope *envelope, } if(msg->opts && msg->opts->vsm_data!=NULL) { + mstro_stats_add_counter(MSTRO_STATS_CAT_OFI, MSTRO_STATS_L_PC_NUM_VSM_IN, 1); ERR("VSM, Unimplemented\n"); status=MSTRO_UNIMPL; goto BAILOUT; diff --git a/maestro/pool_manager.c b/maestro/pool_manager.c index fc501094..28b82cac 100644 --- a/maestro/pool_manager.c +++ b/maestro/pool_manager.c @@ -2519,6 +2519,7 @@ mstro_pm_handle_msg(const struct mstro_msg_envelope *envelope, } if(msg->opts && msg->opts->vsm_data!=NULL) { + mstro_stats_add_counter(MSTRO_STATS_CAT_OFI, MSTRO_STATS_L_PM_NUM_VSM_IN, 1); ERR("VSM, Unimplemented\n"); mstro_pm__msg_free(msg); status=MSTRO_UNIMPL; diff --git a/maestro/pool_manager_protocol.c b/maestro/pool_manager_protocol.c index 2f423ef2..0ffcfdaa 100644 --- a/maestro/pool_manager_protocol.c +++ b/maestro/pool_manager_protocol.c @@ -36,6 +36,7 @@ #include "maestro/i_globals.h" #include "maestro/i_ofi.h" +#include "maestro/i_statistics.h" #include <assert.h> #include <stdint.h> @@ -126,6 +127,11 @@ mstro_pmp_send_nowait(mstro_app_id target, const Mstro__Pool__MstroMsg *msg) INFO("Message %s packed size %zu requires fragmentation\n", msg->base.descriptor->name, len); ERR("VSMs unimplemented\n"); + if(target==MSTRO_APP_ID_MANAGER && !g_mstro_pm_attached) { + mstro_stats_add_counter(MSTRO_STATS_CAT_OFI, MSTRO_STATS_L_PC_NUM_VSM_OUT, 1); + } else { + mstro_stats_add_counter(MSTRO_STATS_CAT_OFI, MSTRO_STATS_L_PM_NUM_VSM_OUT, 1); + } return MSTRO_UNIMPL; } diff --git a/maestro/statistics.c b/maestro/statistics.c index 8e7b3a14..8b3a364d 100644 --- a/maestro/statistics.c +++ b/maestro/statistics.c @@ -958,16 +958,16 @@ static struct { MSTRO_STATS_COLL_COUNTER }, /* OFI */ { MSTRO_STATS_CAT_OFI, - MSTRO_STATS_L_PC_VSM_IN, + MSTRO_STATS_L_PC_NUM_VSM_IN, MSTRO_STATS_COLL_COUNTER }, { MSTRO_STATS_CAT_OFI, - MSTRO_STATS_L_PC_VSM_OUT, + MSTRO_STATS_L_PC_NUM_VSM_OUT, MSTRO_STATS_COLL_COUNTER }, { MSTRO_STATS_CAT_OFI, - MSTRO_STATS_L_PM_VSM_IN, + MSTRO_STATS_L_PM_NUM_VSM_IN, MSTRO_STATS_COLL_COUNTER }, { MSTRO_STATS_CAT_OFI, - MSTRO_STATS_L_PM_VSM_OUT, + MSTRO_STATS_L_PM_NUM_VSM_OUT, MSTRO_STATS_COLL_COUNTER }, }; -- GitLab