From 27d4992f755279a2240059c9cd67f737af0481a2 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Fri, 6 May 2022 12:02:54 +0200 Subject: Add worker ID to profiling data --- libcrystfel/src/profile.c | 10 ++++++---- libcrystfel/src/profile.h | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'libcrystfel') diff --git a/libcrystfel/src/profile.c b/libcrystfel/src/profile.c index 79228b34..82f0217f 100644 --- a/libcrystfel/src/profile.c +++ b/libcrystfel/src/profile.c @@ -166,7 +166,7 @@ static void free_profile_block(struct _profile_block *b) } -void profile_print_and_reset() +void profile_print_and_reset(int worker_id) { char *buf; char *buf2; @@ -187,10 +187,12 @@ void profile_print_and_reset() stop_profile_block(pd->root); buf = format_profile_block(pd->root); - buf2 = malloc(2+strlen(buf)); - strcpy(buf2, buf); - strcat(buf2, "\n"); + buf2 = malloc(8+strlen(buf)); + size_t len = 8+strlen(buf); + snprintf(buf2, len, "%i %s\n", worker_id, buf); write(STDOUT_FILENO, buf2, strlen(buf2)); + free(buf); + free(buf2); free_profile_block(pd->root); pd->root = start_profile_block("root"); diff --git a/libcrystfel/src/profile.h b/libcrystfel/src/profile.h index 183528ce..61ef20c3 100644 --- a/libcrystfel/src/profile.h +++ b/libcrystfel/src/profile.h @@ -35,7 +35,7 @@ */ extern void profile_init(); -extern void profile_print_and_reset(); +extern void profile_print_and_reset(int worker_id); extern void profile_start(const char *name); extern void profile_end(const char *name); -- cgit v1.2.3