[Darshan-commits] [Darshan] branch, dev-modular, updated. darshan-2.3.1-97-g5a14a88

Service Account git at mcs.anl.gov
Tue Apr 7 11:02:41 CDT 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".

The branch, dev-modular has been updated
       via  5a14a88b6155a9af96a8e86da50b420f12f076ab (commit)
      from  3fae94044d78b6954d1a4e574eb6ff02d533fd1a (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 5a14a88b6155a9af96a8e86da50b420f12f076ab
Author: Shane Snyder <ssnyder at mcs.anl.gov>
Date:   Tue Apr 7 11:02:25 2015 -0500

    shared file reduction bug fix

-----------------------------------------------------------------------

Summary of changes:
 darshan-runtime/lib/darshan-core.c  |    2 +-
 darshan-runtime/lib/darshan-mpiio.c |   11 +++++++++++
 2 files changed, 12 insertions(+), 1 deletions(-)


Diff of changes:
diff --git a/darshan-runtime/lib/darshan-core.c b/darshan-runtime/lib/darshan-core.c
index 6ce6831..55006bc 100644
--- a/darshan-runtime/lib/darshan-core.c
+++ b/darshan-runtime/lib/darshan-core.c
@@ -1147,7 +1147,7 @@ static void darshan_get_shared_records(struct darshan_core_runtime *core,
      * which modules accessed them collectively
      */
     DARSHAN_MPI_CALL(PMPI_Allreduce)(mod_flags, global_mod_flags,
-        DARSHAN_CORE_MAX_RECORDS, MPI_UINT64_T, MPI_LAND, MPI_COMM_WORLD);
+        DARSHAN_CORE_MAX_RECORDS, MPI_UINT64_T, MPI_BAND, MPI_COMM_WORLD);
 
     ndx = 0;
     for(i=0; (i<DARSHAN_CORE_MAX_RECORDS && id_array[i] != 0); i++)
diff --git a/darshan-runtime/lib/darshan-mpiio.c b/darshan-runtime/lib/darshan-mpiio.c
index 06f3fa5..67f30a5 100644
--- a/darshan-runtime/lib/darshan-mpiio.c
+++ b/darshan-runtime/lib/darshan-mpiio.c
@@ -263,6 +263,17 @@ static void mpiio_get_output_data(
     assert(mpiio_runtime);
 
     /* TODO: clean up reduction stuff */
+    if(my_rank == 0)
+    {
+        int tmp_ndx = mpiio_runtime->file_array_ndx - mpiio_runtime->shared_rec_count;
+        memcpy(&(mpiio_runtime->file_record_array[tmp_ndx]), mpiio_runtime->red_buf,
+            mpiio_runtime->shared_rec_count * sizeof(struct darshan_mpiio_file));
+        free(mpiio_runtime->red_buf);
+    }
+    else
+    {
+        mpiio_runtime->file_array_ndx -= mpiio_runtime->shared_rec_count;
+    }
 
     *buffer = (void *)(mpiio_runtime->file_record_array);
     *size = mpiio_runtime->file_array_ndx * sizeof(struct darshan_mpiio_file);


hooks/post-receive
--



More information about the Darshan-commits mailing list