Index: src/Common/Stats/Counter.h
===================================================================
--- src/Common/Stats/Counter.h	(revision a1099278b23a4c1041d99bc51d4ca353d251adc4)
+++ src/Common/Stats/Counter.h	(revision 351c5199cc1bf4bce6dc7b8e2ca3a9ecc12da186)
@@ -125,4 +125,28 @@
 			size_t count = 1;
 		};
+
+		template<typename T>
+		class MaxCounter : public BaseCounter {
+		public:
+			MaxCounter(const char * const name ) : BaseCounter(name), max{} {}
+			MaxCounter(const char * const name, BaseCounter * parent) : BaseCounter(name, parent), max{} {}
+
+			inline void push(T value) {
+				max = std::max(max, value);
+			}
+
+		protected:
+			virtual ~MaxCounter() = default;
+
+		private:
+			virtual void print(std::ostream & os) {
+				os << max;
+			}
+			template<typename F>
+			friend void ForAllCounters(BaseCounter::list_t &, size_t, F );
+			friend void print();
+
+			T max;
+		};
 	}
 }
