Commit 7496c279 authored by Shane Snyder's avatar Shane Snyder

More updates to facilitate runtime core shutdown

parent 37d68c1e
...@@ -22,22 +22,21 @@ ...@@ -22,22 +22,21 @@
#define DARSHAN_MOD_NAME_LEN 31 #define DARSHAN_MOD_NAME_LEN 31
/* flags to indicate properties of file records */ /* flags to indicate properties of file records */
#define CP_FLAG_CONDENSED 1<<0
#define CP_FLAG_NOTIMING 1<<1 #define CP_FLAG_NOTIMING 1<<1
struct darshan_core_module struct darshan_core_module
{ {
darshan_module_id id;
char name[DARSHAN_MOD_NAME_LEN+1]; char name[DARSHAN_MOD_NAME_LEN+1];
struct darshan_module_funcs mod_funcs; struct darshan_module_funcs mod_funcs;
struct darshan_core_module *next;
}; };
/* in memory structure to keep up with job level data */ /* in memory structure to keep up with job level data */
struct darshan_core_job_runtime struct darshan_core_job_runtime
{ {
struct darshan_job log_job; struct darshan_job log_job;
struct darshan_core_module* mod_array[DARSHAN_MAX_MODS];
char exe[CP_EXE_LEN+1]; char exe[CP_EXE_LEN+1];
struct darshan_core_module *mod_list_head;
char comp_buf[CP_COMP_BUF_SIZE]; char comp_buf[CP_COMP_BUF_SIZE];
int flags; int flags;
double wtime_offset; double wtime_offset;
......
...@@ -25,9 +25,25 @@ ...@@ -25,9 +25,25 @@
/* Environment variable to override __CP_MEM_ALIGNMENT */ /* Environment variable to override __CP_MEM_ALIGNMENT */
#define CP_MEM_ALIGNMENT_OVERRIDE "DARSHAN_MEMALIGN" #define CP_MEM_ALIGNMENT_OVERRIDE "DARSHAN_MEMALIGN"
/* TODO these go where ? */ /* TODO where do each of the following macros make most sense ? */
#define DARSHAN_MPI_CALL(func) func #define DARSHAN_MPI_CALL(func) func
/* max length of module name string (not counting \0) */
#define DARSHAN_MOD_NAME_LEN 31
/* unique identifiers to distinguish between available darshan modules */
/* NOTES: - valid ids range from [0...DARSHAN_MAX_MODS-1]
* - order of ids control module shutdown order (first module shuts down first)
*/
#define DARSHAN_MAX_MODS 16
typedef enum
{
DARSHAN_POSIX_MOD,
DARSHAN_MPIIO_MOD,
DARSHAN_HDF5_MOD,
DARSHAN_PNETCDF_MOD,
} darshan_module_id;
typedef uint64_t darshan_file_id; typedef uint64_t darshan_file_id;
struct darshan_module_funcs struct darshan_module_funcs
...@@ -41,6 +57,7 @@ struct darshan_module_funcs ...@@ -41,6 +57,7 @@ struct darshan_module_funcs
*********************************************/ *********************************************/
void darshan_core_register_module( void darshan_core_register_module(
darshan_module_id id,
char *name, char *name,
struct darshan_module_funcs *funcs, struct darshan_module_funcs *funcs,
int *runtime_mem_limit); int *runtime_mem_limit);
......
This diff is collapsed.
...@@ -362,6 +362,7 @@ static void posix_runtime_initialize() ...@@ -362,6 +362,7 @@ static void posix_runtime_initialize()
/* register the posix module with darshan core */ /* register the posix module with darshan core */
darshan_core_register_module( darshan_core_register_module(
DARSHAN_POSIX_MOD,
POSIX_MOD_NAME, POSIX_MOD_NAME,
&posix_mod_fns, &posix_mod_fns,
&mem_limit); &mem_limit);
......
This diff is collapsed.
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