[Darshan-commits] [Git][darshan/darshan][master] 3 commits: typo in MPIIO write start timestamp logic
Philip Carns
xgitlab at cels.anl.gov
Wed Oct 5 16:08:52 CDT 2016
Philip Carns pushed to branch master at darshan / darshan
Commits:
48d37a1c by Phil Carns at 2016-10-05T16:52:13-04:00
typo in MPIIO write start timestamp logic
bug reported by William Yoo
- - - - -
25f7f12e by Phil Carns at 2016-10-05T16:53:58-04:00
update Changelog
- - - - -
0727203c by Phil Carns at 2016-10-05T17:07:26-04:00
bump mpiio module version and print warning on old
- - - - -
4 changed files:
- ChangeLog
- darshan-mpiio-log-format.h
- darshan-runtime/lib/darshan-mpiio.c
- darshan-util/darshan-mpiio-logutils.c
Changes:
=====================================
ChangeLog
=====================================
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,12 @@
Darshan Release Change Log
--------------------------
+Darshan-3.1.1
+=============
+* bug fix to MPIIO_F_WRITE_START_TIMESTAMP, which may have produced incorrect
+ timestamps in some cases
+ - reported by Wucherl (William) Yoo
+
Darshan-3.1.0
=============
* add stdio I/O library instrumentation module (Philip Carns)
=====================================
darshan-mpiio-log-format.h
=====================================
--- a/darshan-mpiio-log-format.h
+++ b/darshan-mpiio-log-format.h
@@ -8,7 +8,7 @@
#define __DARSHAN_MPIIO_LOG_FORMAT_H
/* current MPI-IO log format version */
-#define DARSHAN_MPIIO_VER 1
+#define DARSHAN_MPIIO_VER 2
/* TODO: maybe use a counter to track cases in which a derived datatype is used? */
=====================================
darshan-runtime/lib/darshan-mpiio.c
=====================================
--- a/darshan-runtime/lib/darshan-mpiio.c
+++ b/darshan-runtime/lib/darshan-mpiio.c
@@ -193,7 +193,7 @@ static int my_rank = -1;
rec_ref->file_rec->counters[MPIIO_RW_SWITCHES] += 1; \
rec_ref->last_io_type = DARSHAN_IO_WRITE; \
if(rec_ref->file_rec->fcounters[MPIIO_F_WRITE_START_TIMESTAMP] == 0 || \
- rec_ref->file_rec->fcounters[MPIIO_F_READ_START_TIMESTAMP] > __tm1) \
+ rec_ref->file_rec->fcounters[MPIIO_F_WRITE_START_TIMESTAMP] > __tm1) \
rec_ref->file_rec->fcounters[MPIIO_F_WRITE_START_TIMESTAMP] = __tm1; \
rec_ref->file_rec->fcounters[MPIIO_F_WRITE_END_TIMESTAMP] = __tm2; \
if(rec_ref->file_rec->fcounters[MPIIO_F_MAX_WRITE_TIME] < __elapsed) { \
=====================================
darshan-util/darshan-mpiio-logutils.c
=====================================
--- a/darshan-util/darshan-mpiio-logutils.c
+++ b/darshan-util/darshan-mpiio-logutils.c
@@ -64,7 +64,7 @@ static int darshan_log_get_mpiio_file(darshan_fd fd, void** mpiio_buf_p)
if(!file)
return(-1);
}
-
+
ret = darshan_log_get_mod(fd, DARSHAN_MPIIO_MOD, file,
sizeof(struct darshan_mpiio_file));
@@ -165,6 +165,12 @@ static void darshan_log_print_mpiio_description(int ver)
printf("# MPIIO_F_*_RANK_TIME: fastest and slowest I/O time for a single rank (for shared files).\n");
printf("# MPIIO_F_VARIANCE_RANK_*: variance of total I/O time and bytes moved for all ranks (for shared files).\n");
+ if(ver < 2)
+ {
+ printf("\n# WARNING: MPIIO module log format version 1 has the following limitations:\n");
+ printf("# - MPIIO_F_WRITE_START_TIMESTAMP may not be accurate.\n");
+ }
+
return;
}
View it on GitLab: https://xgitlab.cels.anl.gov/darshan/darshan/compare/0bf9973ef6b294e9ab1b20656cab29b34eefba22...0727203c7b99c265623e0fc0c263b7745645f6f1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/darshan-commits/attachments/20161005/9b9242d9/attachment-0001.html>
More information about the Darshan-commits
mailing list