diff options
author | Bill Wendling <wendling@ncsa.uiuc.edu> | 2001-12-10 22:06:22 (GMT) |
---|---|---|
committer | Bill Wendling <wendling@ncsa.uiuc.edu> | 2001-12-10 22:06:22 (GMT) |
commit | 39243d8b0559a96d09595d6f5726b584ab308858 (patch) | |
tree | 43d8f4f8ec580fa1ebe82e1fd1aa7d503faaa95b /perform | |
parent | c597c46ae4ab72205cb1fe3f6592e52c1f3c7c5a (diff) | |
download | hdf5-39243d8b0559a96d09595d6f5726b584ab308858.zip hdf5-39243d8b0559a96d09595d6f5726b584ab308858.tar.gz hdf5-39243d8b0559a96d09595d6f5726b584ab308858.tar.bz2 |
[svn-r4689]
Purpose:
Feature Fix
Description:
Added code so that it will actually output some of the timing
measurements.
Platforms tested:
Linux
Diffstat (limited to 'perform')
-rw-r--r-- | perform/pio_perf.c | 15 | ||||
-rw-r--r-- | perform/pio_perf.h | 15 |
2 files changed, 26 insertions, 4 deletions
diff --git a/perform/pio_perf.c b/perform/pio_perf.c index b9de34e..059845b 100644 --- a/perform/pio_perf.c +++ b/perform/pio_perf.c @@ -230,6 +230,8 @@ run_test_loop(FILE *output, int max_num_procs, long max_size) fprintf(output, "PHDF5\n"); for (j = MIN_HDF5_BUF_SIZE; j <= MAX_HDF5_BUF_SIZE; j <<= 1) { + results res; + parms.num_dsets = ONE_GB / j; parms.num_elmts = (max_size * j) / sizeof(int); @@ -239,8 +241,17 @@ run_test_loop(FILE *output, int max_num_procs, long max_size) parms.num_files, parms.num_dsets, parms.num_elmts); /* call Albert's testing here */ - do_pio(parms); + res = do_pio(parms); + + print_indent(output, TAB_SPACE * 3); + fprintf(output, "Write Results = %f MB/s\n", + (parms.num_dsets * parms.num_elmts * sizeof(int)) / + get_time(res.timers, HDF5_WRITE_FIXED_DIMS)); + /* get back ``result'' object and report */ + /* (res.ret_code == SUCCESS); */ + /* (res.timers); */ + pio_time_destroy(res.timers); } } } @@ -259,8 +270,6 @@ print_indent(register FILE *output, register int indent) { for (; indent > 0; --indent) fputc(' ', output); - - fputc('\n', output); } /* diff --git a/perform/pio_perf.h b/perform/pio_perf.h index 1fdbaee..849df75 100644 --- a/perform/pio_perf.h +++ b/perform/pio_perf.h @@ -7,6 +7,8 @@ #ifndef PIO_PERF_H__ #define PIO_PERF_H__ +#include "pio_timer.h" + typedef enum iotype_ { RAW, MPIO, @@ -23,6 +25,11 @@ typedef struct parameters_ { unsigned int num_iters; /* Number of times to loop doing the IO */ } parameters; +typedef struct results_ { + herr_t ret_code; + pio_time *timers; +} results; + #ifndef SUCCESS #define SUCCESS 0 #endif /* !SUCCESS */ @@ -31,6 +38,12 @@ typedef struct parameters_ { #define FAIL -1 #endif /* !FAIL */ -extern herr_t do_pio(parameters param); +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ +extern results do_pio(parameters param); +#ifdef __cplusplus +} +#endif /* __cplusplus */ #endif /* PIO_PERF_H__ */ |