From 752e747b4d4c881f164205481a81486779415d1d Mon Sep 17 00:00:00 2001 From: Phil Carns Date: Wed, 29 Oct 2014 14:17:54 -0400 Subject: [PATCH] clarify and improve darshan-parser --perf fixes #144 --- ChangeLog | 5 +++++ darshan-util/darshan-parser.c | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 8b77073..1b5f0f3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -19,6 +19,11 @@ darshan-2.3.1-pre1 2.x environment to fix link-time corner cases (Yushu Yao) * improve y axis labels on time interval graphs in darshan-job-summary.pl (reported by Tomo Peterka) +* misc. improvements to darshan-parser --perf output (reported by Shane + Snyder) + - indicate which rank was slowest in unique file results + - label I/O vs. meta time more clearly + - include unique file meta time in agg_perf_by_slowest calculation darshan-2.3.0 ============= diff --git a/darshan-util/darshan-parser.c b/darshan-util/darshan-parser.c index 264ddd0..02171a5 100644 --- a/darshan-util/darshan-parser.c +++ b/darshan-util/darshan-parser.c @@ -65,6 +65,7 @@ typedef struct perf_data_s int64_t total_bytes; double slowest_rank_time; double slowest_rank_meta_time; + int slowest_rank_rank; double shared_time_by_cumul; double shared_time_by_open; double shared_time_by_open_lastio; @@ -475,8 +476,9 @@ int main(int argc, char **argv) printf("#\n"); printf("# I/O timing for unique files (seconds):\n"); printf("# ...........................\n"); - printf("# unique files: slowest_rank_time: %lf\n", pdata.slowest_rank_time); + printf("# unique files: slowest_rank_io_time: %lf\n", pdata.slowest_rank_time); printf("# unique files: slowest_rank_meta_time: %lf\n", pdata.slowest_rank_meta_time); + printf("# unique files: slowest rank: %d\n", pdata.slowest_rank_rank); printf("#\n"); printf("# I/O timing for shared files (seconds):\n"); printf("# (multiple estimates shown; time_by_slowest is generally the most accurate)\n"); @@ -1062,6 +1064,7 @@ void calc_perf(struct darshan_job *djob, { pdata->slowest_rank_time = pdata->rank_cumul_io_time[i]; pdata->slowest_rank_meta_time = pdata->rank_cumul_md_time[i]; + pdata->slowest_rank_rank = i; } } @@ -1083,6 +1086,7 @@ void calc_perf(struct darshan_job *djob, if (pdata->slowest_rank_time + pdata->shared_time_by_slowest) pdata->agg_perf_by_slowest = ((double)pdata->total_bytes / 1048576.0) / (pdata->slowest_rank_time + + pdata->slowest_rank_meta_time + pdata->shared_time_by_slowest); return; -- 2.26.2