aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgrothoff <grothoff@140774ce-b5e7-0310-ab8b-a85725594a96>2012-10-23 18:42:46 +0000
committergrothoff <grothoff@140774ce-b5e7-0310-ab8b-a85725594a96>2012-10-23 18:42:46 +0000
commit1d27013b9440d3ac08c90b1de2c6a28d4a42ada7 (patch)
tree2aee80048c9615a438fe362f79a8fb5c3b22eeee
parentf6d0ac3108df6cc62ef86deec97d579d23e9eaac (diff)
-add option to make expensive heap stat gathering optional
git-svn-id: https://gnunet.org/svn/gnunet@24495 140774ce-b5e7-0310-ab8b-a85725594a96
-rw-r--r--configure.ac9
-rw-r--r--src/statistics/statistics_api.c2
2 files changed, 11 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 28a23f8f03..3caaf253a2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -999,6 +999,15 @@ AC_ARG_ENABLE([experimental],
AC_MSG_RESULT($enable_experimental)
AM_CONDITIONAL([HAVE_EXPERIMENTAL], [test "x$enable_experimental" = "xyes"])
+# should memory statistics be kept (very expensive CPU-wise!)
+AC_MSG_CHECKING(whether to create expensive statistics on memory use)
+AC_ARG_ENABLE([heapstats],
+ [AS_HELP_STRING([--enable-heapstats], [enable expensive heap statistics])],
+ [enable_heapstats=1],
+ [enable_heapstats=0])
+AC_MSG_RESULT($enable_heapstats)
+AC_DEFINE_UNQUOTED([ENABLE_HEAP_STATISTICS],$enable_heapstats,[enable expensive heap statistics])
+
# should code be enabled that works around missing OS functionality on Windows?
# used for test cases
if test $build_target = "mingw"
diff --git a/src/statistics/statistics_api.c b/src/statistics/statistics_api.c
index 79d9604c7a..0f4149ead2 100644
--- a/src/statistics/statistics_api.c
+++ b/src/statistics/statistics_api.c
@@ -271,6 +271,7 @@ struct GNUNET_STATISTICS_Handle
static void
update_memory_statistics (struct GNUNET_STATISTICS_Handle *h)
{
+#if ENABLE_HEAP_STATISTICS
uint64_t current_heap_size = 0;
uint64_t current_rss = 0;
@@ -304,6 +305,7 @@ update_memory_statistics (struct GNUNET_STATISTICS_Handle *h)
h->peak_rss = current_rss;
GNUNET_STATISTICS_set (h, "# peak resident set size", current_rss, GNUNET_NO);
}
+#endif
}