From df266a4588cd7dbfc820aa2fc6c69fe55c8457ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Wed, 18 Nov 2020 16:11:26 +0100 Subject: [PATCH] #1009: memory footprinting: add serializer for DiagnosticStatsPack Add serializer for DiagnosticStatsPack and use it in derived classes. --- src/vt/runtime/component/meter/gauge.h | 4 +++- src/vt/runtime/component/meter/stats_pack.h | 8 ++++++++ src/vt/runtime/component/meter/timer.h | 2 ++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/vt/runtime/component/meter/gauge.h b/src/vt/runtime/component/meter/gauge.h index f077c442ba..025ab8b749 100644 --- a/src/vt/runtime/component/meter/gauge.h +++ b/src/vt/runtime/component/meter/gauge.h @@ -90,7 +90,9 @@ struct Gauge : DiagnosticStatsPack { } template - void serialize(SerializerT&) { } + void serialize(SerializerT& s) { + DiagnosticStatsPack::serialize(s); + } }; }}}} /* end namespace vt::runtime::component::meter */ diff --git a/src/vt/runtime/component/meter/stats_pack.h b/src/vt/runtime/component/meter/stats_pack.h index 2ee783317f..eb2201797b 100644 --- a/src/vt/runtime/component/meter/stats_pack.h +++ b/src/vt/runtime/component/meter/stats_pack.h @@ -101,6 +101,14 @@ struct DiagnosticStatsPack : DiagnosticMeter { } } + template + void serialize(SerializerT& s) { + s | sum_ + | avg_ + | max_ + | min_; + } + protected: detail::DiagnosticValue* sum_ = nullptr; /**< Sum of all update values */ detail::DiagnosticValue* avg_ = nullptr; /**< Avg of all update values */ diff --git a/src/vt/runtime/component/meter/timer.h b/src/vt/runtime/component/meter/timer.h index 54e83c47d1..2628a08f85 100644 --- a/src/vt/runtime/component/meter/timer.h +++ b/src/vt/runtime/component/meter/timer.h @@ -112,6 +112,8 @@ struct Timer : DiagnosticStatsPack { template void serialize(SerializerT& s) { s | start_time_; + + DiagnosticStatsPack::serialize(s); } private: