diff options
Diffstat (limited to 'src/log.c')
-rw-r--r-- | src/log.c | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -1,6 +1,7 @@ #include <stdarg.h> #include <stdint.h> #include <stdio.h> +#include <sys/resource.h> #include <time.h> #define SECOND 1000000000ul @@ -34,7 +35,7 @@ void log_debug(const char *const fmt, ...) #endif static struct timespec start_time; if (start_time.tv_nsec == 0) { - fprintf(stderr, "[ real, cpu]\n"); + fprintf(stderr, "[ real, cpu, maxRSS]\n"); clock_gettime(CLOCK_REALTIME, &start_time); } struct timespec real_time; @@ -42,15 +43,21 @@ void log_debug(const char *const fmt, ...) clock_gettime(CLOCK_REALTIME, &real_time); clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &cpu_time); real_time = time_diff(real_time, start_time); + + struct rusage usage; + getrusage(RUSAGE_SELF, &usage); + va_list args; va_start(args, fmt); fprintf( stderr, - "[%ld.%03ld, %ld.%03ld][DEBUG]: ", + "[%ld.%03ld, %ld.%03ld, %ld KB][DEBUG]: ", real_time.tv_sec, real_time.tv_nsec / 1000000, cpu_time.tv_sec, - cpu_time.tv_nsec / 1000000); + cpu_time.tv_nsec / 1000000, + usage.ru_maxrss + ); vfprintf(stderr, fmt, args); va_end(args); } |