[Darshan-commits] [Darshan] branch, dev-modular, updated. 7b412204c29e14502ee14a2f7f71b99f285c1fb9
Service Account
git at mcs.anl.gov
Tue Feb 17 17:00:39 CST 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 7b412204c29e14502ee14a2f7f71b99f285c1fb9 (commit)
from bec14184625b9df85e56f60d8d3ca6b9feb4d013 (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 7b412204c29e14502ee14a2f7f71b99f285c1fb9
Author: Shane Snyder <ssnyder at mcs.anl.gov>
Date: Tue Feb 17 17:00:13 2015 -0600
misc bug fixes and more documentation
-----------------------------------------------------------------------
Summary of changes:
darshan-runtime/darshan-core.h | 3 ++
darshan-runtime/lib/darshan-core.c | 10 +++--
darshan-runtime/lib/darshan-posix.c | 2 +-
doc/darshan-dev-status.txt | 64 +++++++++++++++++++++++++----------
4 files changed, 56 insertions(+), 23 deletions(-)
Diff of changes:
diff --git a/darshan-runtime/darshan-core.h b/darshan-runtime/darshan-core.h
index 0caa468..8d1c0ce 100644
--- a/darshan-runtime/darshan-core.h
+++ b/darshan-runtime/darshan-core.h
@@ -38,4 +38,7 @@ struct darshan_core_record_ref
UT_hash_handle hlink;
};
+uint32_t darshan_hashlittle(const void *key, size_t length, uint32_t initval);
+uint64_t darshan_hash(const register unsigned char *k, register uint64_t length, register uint64_t level);
+
#endif /* __DARSHAN_CORE_H */
diff --git a/darshan-runtime/lib/darshan-core.c b/darshan-runtime/lib/darshan-core.c
index ee76829..8d21b35 100644
--- a/darshan-runtime/lib/darshan-core.c
+++ b/darshan-runtime/lib/darshan-core.c
@@ -3,6 +3,7 @@
* See COPYRIGHT in top-level directory.
*/
+#define _XOPEN_SOURCE 500
#define _GNU_SOURCE
#include "darshan-runtime-config.h"
@@ -19,6 +20,7 @@
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/vfs.h>
+#include <zlib.h>
#include <mpi.h>
#include <assert.h>
@@ -40,7 +42,7 @@ static int nprocs = -1;
#define DARSHAN_MAX_MNT_TYPE 32
struct mnt_data
{
- int64_t hash;
+ int64_t hash; /* TODO: should it be possible for these to be negative? */
int64_t block_size;
char path[DARSHAN_MAX_MNT_PATH];
char type[DARSHAN_MAX_MNT_TYPE];
@@ -430,11 +432,11 @@ static void darshan_core_shutdown()
/* create a communicator to use for shutting down the module */
if(global_mod_use_count[i] == nprocs)
{
- MPI_Comm_dup(MPI_COMM_WORLD, &mod_comm);
+ DARSHAN_MPI_CALL(PMPI_Comm_dup)(MPI_COMM_WORLD, &mod_comm);
}
else
{
- MPI_Comm_split(MPI_COMM_WORLD, local_mod_use[i], 0, &mod_comm);
+ DARSHAN_MPI_CALL(PMPI_Comm_split)(MPI_COMM_WORLD, local_mod_use[i], 0, &mod_comm);
}
/* if module is registered locally, get the corresponding output buffer */
@@ -479,7 +481,7 @@ static void darshan_core_shutdown()
this_mod = NULL;
}
- MPI_Comm_free(&mod_comm);
+ DARSHAN_MPI_CALL(PMPI_Comm_free)(&mod_comm);
}
/* rank 0 is responsible for writing the log header */
diff --git a/darshan-runtime/lib/darshan-posix.c b/darshan-runtime/lib/darshan-posix.c
index 1578b92..f3dec65 100644
--- a/darshan-runtime/lib/darshan-posix.c
+++ b/darshan-runtime/lib/darshan-posix.c
@@ -419,7 +419,7 @@ static void posix_get_output_data(MPI_Comm comm, void **buffer, int *size)
{
int comm_cmp;
- MPI_Comm_compare(MPI_COMM_WORLD, comm, &comm_cmp);
+ DARSHAN_MPI_CALL(PMPI_Comm_compare)(MPI_COMM_WORLD, comm, &comm_cmp);
/* only do shared file reductions if this communicator includes _everyone_ */
if((comm_cmp == MPI_IDENT) || (comm_cmp == MPI_CONGRUENT))
diff --git a/doc/darshan-dev-status.txt b/doc/darshan-dev-status.txt
index b0c9b52..548d49b 100644
--- a/doc/darshan-dev-status.txt
+++ b/doc/darshan-dev-status.txt
@@ -1,37 +1,65 @@
-Darshan-modular branch development notes
-========================================
+Darshan modularization branch development notes
+===============================================
== Introduction
-Darshan-modular is the new implementation of Darshan (version >= 3.0.0), a lightweight
-toolkit for characterizing the I/O performance of instrumented HPC applications.
+Darshan is a lightweight toolkit for characterizing the I/O performance of instrumented
+HPC applications.
-Previously, Darshan had been designed to gather I/O data from a static set of sources.
+Darshan was originally designed to gather I/O data from a static set of sources.
Adding instrumentation for additional sources of I/O data was only possible through
manual modification of the Darshan log file format, which consequentially breaks
-other utilities reliant on that format.
+any other utilities reliant on that format.
-Darshan-modular is differentiated from previous versions in that it modularizes the Darshan
-runtime environment and log file format such that new "instrumentation modules" can be
-added without breaking existing tools. Essentially, developers are given a framework to
-implement arbitrary modules, which are responsible for gathering I/O data from a specific
-system component (which could be from an I/O library, platform-specific data, etc.). Darshan
-can then manage these modules and create a valid Darshan log regardless of how many or what
-types of modules are used.
+Starting with version 3.0.0, the Darshan runtime environment and log file format have
+been redesigned such that new "instrumentation modules" can be added without breaking
+existing tools. Developers are given a framework to implement arbitrary instrumentation
+modules, which are responsible for gathering I/O data from a specific system component
+(which could be from an I/O library, platform-specific data, etc.). Darshan can then
+manage these modules at runtime and create a valid Darshan log regardless of how many
+or what types of modules are used.
-== Status
+== Architectural overview
-=== Runtime status
+The Darshan source tree is composed of two primary components:
-Text.
+* *darshan-runtime*: Darshan runtime environment necessary for instrumenting MPI
+applications and generating I/O characterization logs.
+
+* *darshan-util*: Darshan utilities for analyzing the contents of a given Darshan
+I/O characterization log.
-=== Util status
+=== darshan-runtime
Text.
-=== Counters status
+=== darshan-util
Text.
+== Checking out and building the modularization branch
+
+Developers can clone the Darshan source repository using the following methods:
+
+* "git clone git://git.mcs.anl.gov/radix/darshan" (read-only access)
+
+* "git clone \git at git.mcs.anl.gov:radix/darshan" (authenticated access)
+
+After cloning the Darshan source, it is necessary to checkout the modularization
+development branch:
+
+----
+git clone git at git.mcs.anl.gov:radix/darshan
+git checkout dev-modular
+----
+
+For details on building the Darshan runtime and utility repositories, consult
+the documentation from previous versions
+(http://www.mcs.anl.gov/research/projects/darshan/docs/darshan-runtime.html[darshan-runtime] and
+http://www.mcs.anl.gov/research/projects/darshan/docs/darshan-util.html[darshan-util]) -- the
+necessary steps for building these repositories should not have changed in the new version of
+Darshan.
+
== Adding new modules
+Text.
hooks/post-receive
--
More information about the Darshan-commits
mailing list