Commit 4165ad56 authored by Philip Carns's avatar Philip Carns

use reductions to account for skew across ranks in start and end time


git-svn-id: https://svn.mcs.anl.gov/repos/darshan/trunk@899 3b7491f3-a168-0410-bf4b-c445ed680a29
parent 2f7158a5
......@@ -6,6 +6,9 @@ darshan-2.3.1-pre1
=============
* Change OPEN_TIMESTAMP field to report timestamp right before open() is
invoked rather than after timestamp after open is completed
* Change start_time and end_time fields in job record to use min and max
(respectively) across all ranks
TODO: bump log version number and add warnings about semantic changes
darshan-2.3.0
=============
......
......@@ -298,6 +298,8 @@ void darshan_shutdown(int timing_flag)
char* env_tok;
#endif
uint64_t hlevel;
int64_t first_start_time;
int64_t last_end_time;
CP_LOCK();
if(!darshan_global_job)
......@@ -528,6 +530,17 @@ void darshan_shutdown(int timing_flag)
final_job->log_job.end_time = time(NULL);
/* reduce to report first start time and last end time across all ranks
* at rank 0
*/
DARSHAN_MPI_CALL(PMPI_Reduce)(&final_job->log_job.start_time, &first_start_time, 1, MPI_LONG_LONG, MPI_MIN, 0, MPI_COMM_WORLD);
DARSHAN_MPI_CALL(PMPI_Reduce)(&final_job->log_job.end_time, &last_end_time, 1, MPI_LONG_LONG, MPI_MAX, 0, MPI_COMM_WORLD);
if(rank == 0)
{
final_job->log_job.start_time = first_start_time;
final_job->log_job.end_time = last_end_time;
}
/* reduce records for shared files */
if(timing_flag)
red1 = DARSHAN_MPI_CALL(PMPI_Wtime)();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment