]> arthur.barton.de Git - netdata.git/blobdiff - src/main.c
jemalloc and tcmalloc configure best practices applied
[netdata.git] / src / main.c
index 79b09237875134ca78c0f24b051265fd3860e6f8..3e6aa5046845b29fbf552c01c2364829c060db24 100644 (file)
@@ -286,8 +286,6 @@ int main(int argc, char **argv)
     // set the name for logging
     program_name = "netdata";
 
-    // parse command line.
-
     // parse depercated options
     // TODO: Remove this block with the next major release.
     {
@@ -376,7 +374,7 @@ int main(int argc, char **argv)
                     break;
                 case 'v':
                     // TODO: Outsource version to makefile which can compute version from git.
-                    printf("netdata 1.3.1_master\n");
+                    printf("netdata %s\n", VERSION);
                     return 0;
                 case 'W':
                     {
@@ -409,6 +407,16 @@ int main(int argc, char **argv)
         load_config(NULL, 0);
 
     {
+        char *pmax = config_get("global", "glibc malloc arena max for plugins", "1");
+        if(pmax && *pmax)
+            setenv("MALLOC_ARENA_MAX", pmax, 1);
+
+#if defined(HAVE_C_MALLOPT)
+        int i = config_get_number("global", "glibc malloc arena max for netdata", 1);
+        if(i > 0)
+            mallopt(M_ARENA_MAX, 1);
+#endif
+
         char *config_dir = config_get("global", "config directory", CONFIG_DIR);
 
         // prepare configuration environment variables for the plugins