diff options
Diffstat (limited to 'perform')
-rw-r--r-- | perform/benchpar.c | 4 | ||||
-rw-r--r-- | perform/chunk.c | 14 | ||||
-rw-r--r-- | perform/iopipe.c | 88 | ||||
-rw-r--r-- | perform/mpi-perf.c | 48 | ||||
-rw-r--r-- | perform/overhead.c | 28 | ||||
-rw-r--r-- | perform/perf.c | 66 | ||||
-rw-r--r-- | perform/perf_meta.c | 154 | ||||
-rw-r--r-- | perform/pio_engine.c | 14 | ||||
-rw-r--r-- | perform/pio_perf.c | 6 | ||||
-rw-r--r-- | perform/pio_standalone.h | 8 |
10 files changed, 215 insertions, 215 deletions
diff --git a/perform/benchpar.c b/perform/benchpar.c index 12dd8e0..8d8c1b5 100644 --- a/perform/benchpar.c +++ b/perform/benchpar.c @@ -88,7 +88,7 @@ static hid_t create_fapl(MPI_Comm comm, MPI_Info info, int acc_type ) /* set parallel access with communicator, using MPI-I/O driver */ if (acc_type == FACC_MPIO) { - ret = H5Pset_fapl_mpio(fapl, comm, info); + ret = H5Pset_fapl_mpio(fapl, comm, info); assert(ret>=0); } /* end if */ @@ -279,7 +279,7 @@ int main(int argc, char *argv[]) printf("rank=%d, error, slice dim larger than rank: slice_dim=%d, rank=%d\n",mpi_rank,slice_dim,rank); goto done; } /* end if */ - + /* Set rest of defaults */ if(file_name==NULL) { char *login; /* Pointer to login name */ diff --git a/perform/chunk.c b/perform/chunk.c index 4150b49..a8a6516 100644 --- a/perform/chunk.c +++ b/perform/chunk.c @@ -156,7 +156,7 @@ create_dataset (void) H5Pset_chunk (dcpl, 2, size); H5Zregister (H5Z_COUNTER); H5Pset_filter (dcpl, FILTER_COUNTER, 0, 0, NULL); - + /* The dataset */ dset = H5Dcreate (file, "dset", H5T_NATIVE_SCHAR, space, dcpl); assert (dset>=0); @@ -238,8 +238,8 @@ test_rowmaj (int op, size_t cache_size, size_t io_size) H5Sclose (mem_space); } } - - free (buf); + + free (buf); H5Sclose (file_space); H5Dclose (dset); H5Fclose (file); @@ -290,7 +290,7 @@ test_diag (int op, size_t cache_size, size_t io_size, size_t offset) dset = H5Dopen (file, "dset"); file_space = H5Dget_space (dset); nio_g = 0; - + for (i=0, hs_size[0]=io_size; hs_size[0]==io_size; i+=offset) { hs_offset[0] = hs_offset[1] = i; hs_size[0] = hs_size[1] = MIN (io_size, CH_SIZE*DS_SIZE-i); @@ -328,9 +328,9 @@ test_diag (int op, size_t cache_size, size_t io_size, size_t offset) * * Purpose: See file prologue. * - * Return: Success: + * Return: Success: * - * Failure: + * Failure: * * Programmer: Robb Matzke * Thursday, May 14, 1998 @@ -406,7 +406,7 @@ main (void) fclose (d); fprintf (f, "pause -1\n"); #endif - + #if 1 /* * Test row-major writing of the dataset with various sizes of request diff --git a/perform/iopipe.c b/perform/iopipe.c index 200ee7e..84a0a69 100644 --- a/perform/iopipe.c +++ b/perform/iopipe.c @@ -22,23 +22,23 @@ #ifdef H5_HAVE_WINSOCK_H #include <Winsock.h> -#endif +#endif /*Winsock.h includes windows.h, due to the different value of WINVER, windows.h should be put before H5private.h. Kent yang 6/21/2001*/ #if defined (__MWERKS__) -#ifdef H5_HAVE_SYS_TIMEB +#ifdef H5_HAVE_SYS_TIMEB #undef H5_HAVE_SYS_TIMEB #endif -#ifdef H5_HAVE_SYSTEM +#ifdef H5_HAVE_SYSTEM #undef H5_HAVE_SYSTEM #endif #endif /* __MWERKS__*/ #include "H5private.h" -#ifdef H5_HAVE_SYS_TIMEB +#ifdef H5_HAVE_SYS_TIMEB #include <sys/timeb.h> #endif @@ -117,12 +117,12 @@ print_stats (const char *prefix, (double)(t_start->tv_usec)/1000.0); #endif bw = (double)nbytes / e_time; - + #ifdef H5_HAVE_GETRUSAGE - printf (HEADING "%1.2fuser %1.2fsystem %1.2felapsed %1.2fMB/s\n", + printf (HEADING "%1.2fuser %1.2fsystem %1.2felapsed %1.2fMB/s\n", prefix, u_time, s_time, e_time, bw/(1024*1024)); #else - printf (HEADING "%1.2felapsed %1.2fMB/s\n", + printf (HEADING "%1.2felapsed %1.2fMB/s\n", prefix, e_time, bw/(1024*1024)); #endif @@ -132,7 +132,7 @@ print_stats (const char *prefix, /*------------------------------------------------------------------------- * Function: synchronize * - * Purpose: + * Purpose: * * Return: void * @@ -168,11 +168,11 @@ synchronize (void) /*------------------------------------------------------------------------- * Function: main * - * Purpose: + * Purpose: * - * Return: Success: + * Return: Success: * - * Failure: + * Failure: * * Programmer: Robb Matzke * Thursday, March 12, 1998 @@ -192,9 +192,9 @@ main (void) herr_t status; #ifdef H5_HAVE_GETRUSAGE struct rusage r_start, r_stop; -#else +#else struct timeval r_start, r_stop; -#endif +#endif struct timeval t_start, t_stop; int i, fd; hssize_t n; @@ -214,13 +214,13 @@ main (void) */ printf ("I/O request size is %1.1fMB\n", (double)(hssize_t)(size[0]*size[1])/1024.0*1024); - + /* Open the files */ file = H5Fcreate (HDF5_FILE_NAME, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); assert (file>=0); fd = HDopen (RAW_FILE_NAME, O_RDWR|O_CREAT|O_TRUNC, 0666); assert (fd>=0); - + /* Create the dataset */ file_space = H5Screate_simple (2, size, size); assert (file_space>=0); @@ -238,11 +238,11 @@ printf("Before getrusage() call\n"); #endif #ifdef H5_HAVE_GETTIMEOFDAY gettimeofday (&t_start, NULL); -#else +#else #ifdef H5_HAVE_SYS_TIMEB _ftime(tbstart); #endif -#endif +#endif fprintf (stderr, HEADING, "fill raw"); for (i=0; i<nwrite; i++) { putc (PROGRESS, stderr); @@ -261,13 +261,13 @@ printf("Before getrusage() call\n"); t_start.tv_usec = tbstart->millitm; t_stop.tv_sec = tbstop->time; t_stop.tv_usec = tbstop->millitm; -#endif -#endif +#endif +#endif putc ('\n', stderr); print_stats ("fill raw", &r_start, &r_stop, &t_start, &t_stop, (size_t)(nread*size[0]*size[1])); - + /* Fill hdf5 */ synchronize (); @@ -280,7 +280,7 @@ printf("Before getrusage() call\n"); #ifdef H5_HAVE_SYS_TIMEB _ftime(tbstart); #endif -#endif +#endif fprintf (stderr, HEADING, "fill hdf5"); for (i=0; i<nread; i++) { putc (PROGRESS, stderr); @@ -301,13 +301,13 @@ printf("Before getrusage() call\n"); t_start.tv_usec = tbstart->millitm; t_stop.tv_sec = tbstop->time; t_stop.tv_usec = tbstop->millitm; -#endif -#endif +#endif +#endif putc ('\n', stderr); print_stats ("fill hdf5", &r_start, &r_stop, &t_start, &t_stop, (size_t)(nread*size[0]*size[1])); - + /* Write the raw dataset */ synchronize (); #ifdef H5_HAVE_GETRUSAGE @@ -319,7 +319,7 @@ printf("Before getrusage() call\n"); #ifdef H5_HAVE_SYS_TIMEB _ftime(tbstart); #endif -#endif +#endif fprintf (stderr, HEADING, "out raw"); for (i=0; i<nwrite; i++) { putc (PROGRESS, stderr); @@ -341,8 +341,8 @@ printf("Before getrusage() call\n"); t_start.tv_usec = tbstart->millitm; t_stop.tv_sec = tbstop->time; t_stop.tv_usec = tbstop->millitm; -#endif -#endif +#endif +#endif putc ('\n', stderr); print_stats ("out raw", &r_start, &r_stop, &t_start, &t_stop, @@ -359,7 +359,7 @@ printf("Before getrusage() call\n"); #ifdef H5_HAVE_SYS_TIMEB _ftime(tbstart); #endif -#endif +#endif fprintf (stderr, HEADING, "out hdf5"); for (i=0; i<nwrite; i++) { putc (PROGRESS, stderr); @@ -380,8 +380,8 @@ printf("Before getrusage() call\n"); t_start.tv_usec = tbstart->millitm; t_stop.tv_sec = tbstop->time; t_stop.tv_usec = tbstop->millitm; -#endif -#endif +#endif +#endif putc ('\n', stderr); print_stats ("out hdf5", &r_start, &r_stop, &t_start, &t_stop, @@ -398,7 +398,7 @@ printf("Before getrusage() call\n"); #ifdef H5_HAVE_SYS_TIMEB _ftime(tbstart); #endif -#endif +#endif fprintf (stderr, HEADING, "in raw"); for (i=0; i<nread; i++) { putc (PROGRESS, stderr); @@ -420,13 +420,13 @@ printf("Before getrusage() call\n"); t_start.tv_usec = tbstart->millitm; t_stop.tv_sec = tbstop->time; t_stop.tv_usec = tbstop->millitm; -#endif -#endif +#endif +#endif putc ('\n', stderr); print_stats ("in raw", &r_start, &r_stop, &t_start, &t_stop, (size_t)(nread*size[0]*size[1])); - + /* Read the hdf5 dataset */ synchronize (); @@ -438,8 +438,8 @@ printf("Before getrusage() call\n"); #else #ifdef H5_HAVE_SYS_TIMEB _ftime(tbstart); -#endif -#endif +#endif +#endif fprintf (stderr, HEADING, "in hdf5"); for (i=0; i<nread; i++) { putc (PROGRESS, stderr); @@ -461,7 +461,7 @@ printf("Before getrusage() call\n"); t_stop.tv_sec = tbstop->time; t_stop.tv_usec = tbstop->millitm; #endif -#endif +#endif putc ('\n', stderr); print_stats ("in hdf5", &r_start, &r_stop, &t_start, &t_stop, @@ -482,8 +482,8 @@ printf("Before getrusage() call\n"); #else #ifdef H5_HAVE_SYS_TIMEB _ftime(tbstart); -#endif -#endif +#endif +#endif fprintf (stderr, HEADING, "in hdf5 partial"); for (i=0; i<nread; i++) { putc (PROGRESS, stderr); @@ -504,20 +504,20 @@ printf("Before getrusage() call\n"); t_start.tv_usec = tbstart->millitm; t_stop.tv_sec = tbstop->time; t_stop.tv_usec = tbstop->millitm; -#endif -#endif +#endif +#endif putc ('\n', stderr); print_stats ("in hdf5 partial", &r_start, &r_stop, &t_start, &t_stop, (size_t)(nread*count[0]*count[1])); - - + + /* Close everything */ HDclose (fd); H5Dclose (dset); H5Sclose (file_space); H5Fclose (file); - + return 0; } diff --git a/perform/mpi-perf.c b/perform/mpi-perf.c index b17ed4b..06cb499 100644 --- a/perform/mpi-perf.c +++ b/perform/mpi-perf.c @@ -99,11 +99,11 @@ int main(int argc, char **argv) if (mynod == 0) printf("# Using mpi-io calls.\n"); - - /* kindof a weird hack- if the location of the pvfstab file was + + /* kindof a weird hack- if the location of the pvfstab file was * specified on the command line, then spit out this location into * the appropriate environment variable: */ - + #if H5_HAVE_SETENV /* no setenv or unsetenv */ if (opt_pvfstab_set) { @@ -113,12 +113,12 @@ int main(int argc, char **argv) } } #endif - + /* this is how much of the file data is covered on each iteration of * the test. used to help determine the seek offset on each * iteration */ iter_jump = nprocs * opt_block; - + /* setup a buffer of data to write */ if (!(tmp = (char *) malloc(opt_block + 256))) { perror("malloc"); @@ -136,7 +136,7 @@ int main(int argc, char **argv) } /* open the file for writing */ - err = MPI_File_open(MPI_COMM_WORLD, opt_file, + err = MPI_File_open(MPI_COMM_WORLD, opt_file, MPI_MODE_CREATE | MPI_MODE_RDWR, MPI_INFO_NULL, &fh); if (err < 0) { fprintf(stderr, "node %d, open error: %s\n", mynod, strerror(errno)); @@ -163,7 +163,7 @@ int main(int argc, char **argv) nchars = opt_block/sizeof(char); err = MPI_File_write_at(fh, seek_position, buf, nchars, MPI_CHAR, &status); if(err){ - fprintf(stderr, "node %d, write error: %s\n", mynod, + fprintf(stderr, "node %d, write error: %s\n", mynod, strerror(errno)); } @@ -171,7 +171,7 @@ int main(int argc, char **argv) etim = MPI_Wtime(); write_tim += (etim - stim); - + /* we are done with this "write" iteration */ } @@ -179,12 +179,12 @@ int main(int argc, char **argv) if(err){ fprintf(stderr, "node %d, close error after write\n", mynod); } - + /* wait for everyone to synchronize at this point */ MPI_Barrier(MPI_COMM_WORLD); /* reopen the file to read the data back out */ - err = MPI_File_open(MPI_COMM_WORLD, opt_file, + err = MPI_File_open(MPI_COMM_WORLD, opt_file, MPI_MODE_CREATE | MPI_MODE_RDWR, MPI_INFO_NULL, &fh); if (err < 0) { fprintf(stderr, "node %d, open error: %s\n", mynod, strerror(errno)); @@ -246,7 +246,7 @@ int main(int argc, char **argv) MPI_COMM_WORLD); /* calculate the average from the sum */ - ave_read_tim = ave_read_tim / nprocs; + ave_read_tim = ave_read_tim / nprocs; MPI_Allreduce(&write_tim, &max_write_tim, 1, MPI_DOUBLE, MPI_MAX, MPI_COMM_WORLD); @@ -256,33 +256,33 @@ int main(int argc, char **argv) MPI_COMM_WORLD); /* calculate the average from the sum */ - ave_write_tim = ave_write_tim / nprocs; - + ave_write_tim = ave_write_tim / nprocs; + /* print out the results on one node */ if (mynod == 0) { read_bw = ((int64_t)(opt_block*nprocs*opt_iter))/(max_read_tim*1000000.0); write_bw = ((int64_t)(opt_block*nprocs*opt_iter))/(max_write_tim*1000000.0); - + printf("nr_procs = %d, nr_iter = %d, blk_sz = %ld\n", nprocs, opt_iter, (long)opt_block); - + printf("# total_size = %ld\n", (long)(opt_block*nprocs*opt_iter)); - - printf("# Write: min_time = %f, max_time = %f, mean_time = %f\n", + + printf("# Write: min_time = %f, max_time = %f, mean_time = %f\n", min_write_tim, max_write_tim, ave_write_tim); - printf("# Read: min_time = %f, max_time = %f, mean_time = %f\n", + printf("# Read: min_time = %f, max_time = %f, mean_time = %f\n", min_read_tim, max_read_tim, ave_read_tim); - + printf("Write bandwidth = %f Mbytes/sec\n", write_bw); printf("Read bandwidth = %f Mbytes/sec\n", read_bw); - + if (opt_correct) { printf("Correctness test %s.\n", correct ? "passed" : "failed"); } } -die_jar_jar_die: +die_jar_jar_die: #if H5_HAVE_SETENV /* no setenv or unsetenv */ @@ -291,7 +291,7 @@ die_jar_jar_die: unsetenv("PVFSTAB_FILE"); } #endif - + free(tmp); if (opt_correct) free(tmp2); MPI_Finalize(); @@ -301,7 +301,7 @@ die_jar_jar_die: int parse_args(int argc, char **argv) { int c; - + while ((c = getopt(argc, argv, "s:b:i:f:p:c")) != EOF) { switch (c) { case 's': /* stripe */ @@ -335,7 +335,7 @@ int parse_args(int argc, char **argv) double Wtime() { struct timeval t; - + gettimeofday(&t, NULL); return((double)t.tv_sec + (double)t.tv_usec / 1000000); } diff --git a/perform/overhead.c b/perform/overhead.c index d9715e7..4835d44 100644 --- a/perform/overhead.c +++ b/perform/overhead.c @@ -60,7 +60,7 @@ #ifndef TRUE #define TRUE 1 #endif /* TRUE */ - + typedef enum fill_t { FILL_ALL, FILL_FORWARD, @@ -225,13 +225,13 @@ test(fill_t fill_style, const double splits[], if ((dset=H5Dcreate(file, "chunked", H5T_NATIVE_INT, fspace, dcpl))<0) goto error; -#if !defined( __MWERKS__) +#if !defined( __MWERKS__) - /* + /* workaround for a bug in the Metrowerks version 6.0 open function - */ + */ if ((fd=HDopen(FILE_NAME_1, O_RDONLY, 0666))<0) goto error; -#endif +#endif for (i=1; i<=cur_size[0]; i++) { @@ -267,7 +267,7 @@ test(fill_t fill_style, const double splits[], } -#if !defined( __MWERKS__) +#if !defined( __MWERKS__) /* Determine overhead */ if (verbose) { @@ -282,9 +282,9 @@ test(fill_t fill_style, const double splits[], (unsigned long)i, (double)(hssize_t)(sb.st_size-i*sizeof(int))/(hssize_t)i); } -#endif - - +#endif + + } H5Dclose(dset); @@ -314,15 +314,15 @@ test(fill_t fill_style, const double splits[], case FILL_ALL: abort(); } - + #if !defined( __MWERKS__) - + if (HDfstat(fd, &sb)<0) goto error; printf("%-7s %8.3f\n", sname, (double)(hssize_t)(sb.st_size-cur_size[0]*sizeof(int))/ (hssize_t)cur_size[0]); #endif - + } @@ -348,7 +348,7 @@ test(fill_t fill_style, const double splits[], /*------------------------------------------------------------------------- * Function: main * - * Purpose: + * Purpose: * * Return: Success: zero * @@ -378,7 +378,7 @@ main(int argc, char *argv[]) goto error; } if (H5Pclose(xfer)<0) goto error; - + /* Parse command-line options */ for (i=1, j=0; i<argc; i++) { if (!strcmp(argv[i], "forward")) { diff --git a/perform/perf.c b/perform/perf.c index ced92d7..8f5d096 100644 --- a/perform/perf.c +++ b/perform/perf.c @@ -12,9 +12,9 @@ * access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ -/* +/* * Author: Albert Cheng of NCSA, May 1, 2001. - * This is derived from code given to me by Robert Ross. + * This is derived from code given to me by Robert Ross. * * NOTE: This code assumes that all command line arguments make it out to all * the processes that make up the parallel job, which isn't always the case. @@ -119,11 +119,11 @@ int main(int argc, char **argv) if (mynod == 0) printf("# Using hdf5-io calls.\n"); - - /* kindof a weird hack- if the location of the pvfstab file was + + /* kindof a weird hack- if the location of the pvfstab file was * specified on the command line, then spit out this location into * the appropriate environment variable: */ - + #if H5_HAVE_SETENV /* no setenv or unsetenv */ if (opt_pvfstab_set) { @@ -133,12 +133,12 @@ int main(int argc, char **argv) } } #endif - + /* this is how much of the file data is covered on each iteration of * the test. used to help determine the seek offset on each * iteration */ iter_jump = nprocs * opt_block; - + /* setup a buffer of data to write */ if (!(tmp = (char *) malloc(opt_block + 256))) { perror("malloc"); @@ -161,7 +161,7 @@ int main(int argc, char **argv) mpio_pl = H5Pcreate (H5P_FILE_ACCESS); VRFY((acc_tpl >= 0), "", H5FATAL); - ret = H5Pset_fapl_mpio(mpio_pl, MPI_COMM_WORLD, MPI_INFO_NULL); + ret = H5Pset_fapl_mpio(mpio_pl, MPI_COMM_WORLD, MPI_INFO_NULL); VRFY((ret >= 0), "", H5FATAL); /* set optional allocation alignment */ @@ -179,7 +179,7 @@ int main(int argc, char **argv) /* setup file access template */ acc_tpl = H5Pcreate (H5P_FILE_ACCESS); VRFY((acc_tpl >= 0), "", H5FATAL); - ret = H5Pset_fapl_mpio(acc_tpl, MPI_COMM_WORLD, MPI_INFO_NULL); + ret = H5Pset_fapl_mpio(acc_tpl, MPI_COMM_WORLD, MPI_INFO_NULL); VRFY((ret >= 0), "", H5FATAL); /* set optional allocation alignment */ @@ -216,7 +216,7 @@ int main(int argc, char **argv) start[0] = (j*iter_jump)+(mynod*opt_block); stride[0] = block[0] = opt_block; count[0]= 1; - ret=H5Sselect_hyperslab(file_dataspace, H5S_SELECT_SET, start, stride, count, block); + ret=H5Sselect_hyperslab(file_dataspace, H5S_SELECT_SET, start, stride, count, block); VRFY((ret >= 0), "H5Sset_hyperslab succeeded", H5FATAL); if (opt_correct) /* fill in buffer for iteration */ { @@ -229,21 +229,21 @@ int main(int argc, char **argv) /* write data */ ret = H5Dwrite(dataset, H5T_NATIVE_CHAR, mem_dataspace, file_dataspace, - H5P_DEFAULT, buf); + H5P_DEFAULT, buf); VRFY((ret >= 0), "H5Dwrite dataset1 succeeded", !H5FATAL); /* discover the ending time of the operation */ etim = MPI_Wtime(); write_tim += (etim - stim); - + /* we are done with this "write" iteration */ } - /* close dataset and file */ + /* close dataset and file */ ret=H5Dclose(dataset); VRFY((ret >= 0), "H5Dclose succeeded", H5FATAL); - ret=H5Fclose(fid); + ret=H5Fclose(fid); VRFY((ret >= 0), "H5Fclose succeeded", H5FATAL); @@ -269,7 +269,7 @@ int main(int argc, char **argv) start[0] = (j*iter_jump)+(mynod*opt_block); stride[0] = block[0] = opt_block; count[0]= 1; - ret=H5Sselect_hyperslab(file_dataspace, H5S_SELECT_SET, start, stride, count, block); + ret=H5Sselect_hyperslab(file_dataspace, H5S_SELECT_SET, start, stride, count, block); VRFY((ret >= 0), "H5Sset_hyperslab succeeded", H5FATAL); /* seek to the appropriate spot give the current iteration and * rank within the MPI processes */ @@ -282,11 +282,11 @@ int main(int argc, char **argv) /* read in the file data */ if (!opt_correct){ ret = H5Dread(dataset, H5T_NATIVE_CHAR, mem_dataspace, file_dataspace, - H5P_DEFAULT, buf); + H5P_DEFAULT, buf); } else{ ret = H5Dread(dataset, H5T_NATIVE_CHAR, mem_dataspace, file_dataspace, - H5P_DEFAULT, buf2); + H5P_DEFAULT, buf2); } myerrno = errno; /* discover the end time */ @@ -310,10 +310,10 @@ int main(int argc, char **argv) /* we are done with this read iteration */ } - /* close dataset and file */ + /* close dataset and file */ ret=H5Dclose(dataset); VRFY((ret >= 0), "H5Dclose succeeded", H5FATAL); - ret=H5Fclose(fid); + ret=H5Fclose(fid); VRFY((ret >= 0), "H5Fclose succeeded", H5FATAL); /* compute the read and write times */ @@ -325,7 +325,7 @@ int main(int argc, char **argv) MPI_COMM_WORLD); /* calculate the average from the sum */ - ave_read_tim = ave_read_tim / nprocs; + ave_read_tim = ave_read_tim / nprocs; MPI_Allreduce(&write_tim, &max_write_tim, 1, MPI_DOUBLE, MPI_MAX, MPI_COMM_WORLD); @@ -335,33 +335,33 @@ int main(int argc, char **argv) MPI_COMM_WORLD); /* calculate the average from the sum */ - ave_write_tim = ave_write_tim / nprocs; - + ave_write_tim = ave_write_tim / nprocs; + /* print out the results on one node */ if (mynod == 0) { read_bw = ((int64_t)(opt_block*nprocs*opt_iter))/(max_read_tim*1000000.0); write_bw = ((int64_t)(opt_block*nprocs*opt_iter))/(max_write_tim*1000000.0); - + printf("nr_procs = %d, nr_iter = %d, blk_sz = %ld\n", nprocs, opt_iter, (long)opt_block); - + printf("# total_size = %ld\n", (long)(opt_block*nprocs*opt_iter)); - - printf("# Write: min_time = %f, max_time = %f, mean_time = %f\n", + + printf("# Write: min_time = %f, max_time = %f, mean_time = %f\n", min_write_tim, max_write_tim, ave_write_tim); - printf("# Read: min_time = %f, max_time = %f, mean_time = %f\n", + printf("# Read: min_time = %f, max_time = %f, mean_time = %f\n", min_read_tim, max_read_tim, ave_read_tim); - + printf("Write bandwidth = %f Mbytes/sec\n", write_bw); printf("Read bandwidth = %f Mbytes/sec\n", read_bw); - + if (opt_correct) { printf("Correctness test %s.\n", correct ? "passed" : "failed"); } } -die_jar_jar_die: +die_jar_jar_die: #if H5_HAVE_SETENV /* no setenv or unsetenv */ @@ -370,7 +370,7 @@ die_jar_jar_die: unsetenv("PVFSTAB_FILE"); } #endif - + free(tmp); if (opt_correct) free(tmp2); MPI_Finalize(); @@ -380,7 +380,7 @@ die_jar_jar_die: int parse_args(int argc, char **argv) { int c; - + while ((c = getopt(argc, argv, "s:b:i:f:p:a:2:c")) != EOF) { switch (c) { case 's': /* stripe */ @@ -444,7 +444,7 @@ int parse_args(int argc, char **argv) double Wtime() { struct timeval t; - + gettimeofday(&t, NULL); return((double)t.tv_sec + (double)t.tv_usec / 1000000); } diff --git a/perform/perf_meta.c b/perform/perf_meta.c index e157c78..69f4146 100644 --- a/perform/perf_meta.c +++ b/perform/perf_meta.c @@ -82,13 +82,13 @@ void print_perf(p_time, p_time, p_time); Purpose: Parse command line options * * Programmer: Raymond Lu - * Friday, Oct 3, 2003 + * Friday, Oct 3, 2003 * * Modifications: * *------------------------------------------------------------------------- */ -static int +static int parse_options(int argc, char **argv) { int t; @@ -104,7 +104,7 @@ parse_options(int argc, char **argv) switch(*(*argv+1)){ case 'h': /* Help page */ return(1); - + case 'd': /* Number of datasets */ NUM_DSETS = atoi((*argv+1)+1); if (NUM_DSETS < 0){ @@ -112,7 +112,7 @@ parse_options(int argc, char **argv) return(1); } break; - + case 'a': /* Number of attributes per dataset */ NUM_ATTRS = atoi((*argv+1)+1); if (NUM_ATTRS < 0){ @@ -155,11 +155,11 @@ parse_options(int argc, char **argv) return(1); } if(t == 1) - RUN_TEST |= TEST_1; + RUN_TEST |= TEST_1; else if(t == 2) - RUN_TEST |= TEST_2; + RUN_TEST |= TEST_2; else - RUN_TEST |= TEST_3; + RUN_TEST |= TEST_3; break; @@ -178,12 +178,12 @@ parse_options(int argc, char **argv) } #endif /*H5_HAVE_PARALLEL*/ - if(NUM_ATTRS && !BATCH_ATTRS) + if(NUM_ATTRS && !BATCH_ATTRS) NUM_ATTRS = 0; - - if(!NUM_ATTRS && BATCH_ATTRS) - BATCH_ATTRS = 0; - + + if(!NUM_ATTRS && BATCH_ATTRS) + BATCH_ATTRS = 0; + if(!NUM_DSETS) { nerrors++; return(1); @@ -195,7 +195,7 @@ parse_options(int argc, char **argv) return(1); } } - + return(0); } @@ -206,7 +206,7 @@ parse_options(int argc, char **argv) Purpose: Prints help page * * Programmer: Raymond Lu - * Friday, Oct 3, 2003 + * Friday, Oct 3, 2003 * * Modifications: * @@ -277,7 +277,7 @@ create_dspace(void) { hsize_t dims[2]; hsize_t small_dims[2]; - + /* Create the data space */ dims[0] = 256; dims[1] = 512; @@ -294,7 +294,7 @@ create_dspace(void) error: return -1; -} +} /*------------------------------------------------------------------------- @@ -324,8 +324,8 @@ create_dsets(hid_t file) * Create a dataset using the default dataset creation properties. */ for(i=0; i<NUM_DSETS; i++) { - sprintf(dset_name, "dataset %d", i); - if((dataset = H5Dcreate(file, dset_name, H5T_NATIVE_DOUBLE, + sprintf(dset_name, "dataset %d", i); + if((dataset = H5Dcreate(file, dset_name, H5T_NATIVE_DOUBLE, space, H5P_DEFAULT)) < 0) goto error; @@ -376,11 +376,11 @@ create_attrs_1(void) #endif /*H5_HAVE_PARALLEL*/ h5_fixname(FILENAME[0], fapl, filename, sizeof filename); - - if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, + + if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) goto error; - + if(create_dsets(file)<0) goto error; @@ -388,20 +388,20 @@ create_attrs_1(void) * Create all(user specifies the number) attributes for each dataset */ for(i=0; i<NUM_DSETS; i++) { - sprintf(dset_name, "dataset %d", i); + sprintf(dset_name, "dataset %d", i); open_t.start = retrieve_time(); if((dataset=H5Dopen(file, dset_name))<0) goto error; perf(&open_t, open_t.start, retrieve_time()); for(j=0; j<NUM_ATTRS; j++) { - sprintf(attr_name, "all attrs for each dset %d", j); - attr_t.start = retrieve_time(); - if((attr = H5Acreate(dataset, attr_name, H5T_NATIVE_DOUBLE, + sprintf(attr_name, "all attrs for each dset %d", j); + attr_t.start = retrieve_time(); + if((attr = H5Acreate(dataset, attr_name, H5T_NATIVE_DOUBLE, small_space, H5P_DEFAULT)) < 0) goto error; if (H5Aclose(attr) < 0) goto error; - perf(&attr_t, attr_t.start, retrieve_time()); + perf(&attr_t, attr_t.start, retrieve_time()); if(flush_attr && H5Fflush(file, H5F_SCOPE_LOCAL)<0) goto error; } @@ -410,7 +410,7 @@ create_attrs_1(void) perf(&close_t, close_t.start, retrieve_time()); if(flush_dset && H5Fflush(file, H5F_SCOPE_LOCAL) < 0) goto error; } - + if(facc_type == FACC_MPIO || facc_type == FACC_MPIPOSIX) { #ifdef H5_HAVE_PARALLEL MPI_Barrier(MPI_COMM_WORLD); @@ -421,7 +421,7 @@ create_attrs_1(void) if (facc_type == FACC_DEFAULT || (facc_type != FACC_DEFAULT && MAINPROCESS)) /* only process 0 reports */ #endif /*H5_HAVE_PARALLEL*/ { - /* Calculate the average time */ + /* Calculate the average time */ open_t.avg = open_t.total / NUM_DSETS; close_t.avg = close_t.total / NUM_DSETS; if(NUM_ATTRS) @@ -430,7 +430,7 @@ create_attrs_1(void) /* Print out the performance result */ fprintf(stderr, "1. Create %d attributes for each of %d existing datasets\n", NUM_ATTRS, NUM_DSETS); - print_perf(open_t, close_t, attr_t); + print_perf(open_t, close_t, attr_t); } if (H5Fclose(file)<0) goto error; @@ -439,7 +439,7 @@ create_attrs_1(void) error: return -1; -} +} /*------------------------------------------------------------------------- @@ -478,29 +478,29 @@ create_attrs_2(void) #endif /*H5_HAVE_PARALLEL*/ h5_fixname(FILENAME[1], fapl, filename, sizeof filename); - + if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) goto error; - + /* * Create all(user specifies the number) attributes for each new dataset */ for(i=0; i<NUM_DSETS; i++) { - sprintf(dset_name, "dataset %d", i); - create_t.start = retrieve_time(); - if((dataset = H5Dcreate(file, dset_name, H5T_NATIVE_DOUBLE, + sprintf(dset_name, "dataset %d", i); + create_t.start = retrieve_time(); + if((dataset = H5Dcreate(file, dset_name, H5T_NATIVE_DOUBLE, space, H5P_DEFAULT)) < 0) goto error; perf(&create_t, create_t.start, retrieve_time()); for(j=0; j<NUM_ATTRS; j++) { - sprintf(attr_name, "all attrs for each dset %d", j); - attr_t.start = retrieve_time(); + sprintf(attr_name, "all attrs for each dset %d", j); + attr_t.start = retrieve_time(); if((attr = H5Acreate(dataset, attr_name, H5T_NATIVE_DOUBLE, small_space, H5P_DEFAULT)) < 0) goto error; if (H5Aclose(attr) < 0) goto error; - perf(&attr_t, attr_t.start, retrieve_time()); + perf(&attr_t, attr_t.start, retrieve_time()); if(flush_attr && H5Fflush(file, H5F_SCOPE_LOCAL) < 0) goto error; } @@ -521,7 +521,7 @@ create_attrs_2(void) if (facc_type == FACC_DEFAULT || (facc_type != FACC_DEFAULT && MAINPROCESS)) #endif /*H5_HAVE_PARALLEL*/ { - /* Calculate the average time */ + /* Calculate the average time */ create_t.avg = create_t.total / NUM_DSETS; close_t.avg = close_t.total / NUM_DSETS; if(NUM_ATTRS) @@ -530,16 +530,16 @@ create_attrs_2(void) /* Print out the performance result */ fprintf(stderr, "2. Create %d attributes for each of %d new datasets\n", NUM_ATTRS, NUM_DSETS); - print_perf(create_t, close_t, attr_t); + print_perf(create_t, close_t, attr_t); } - + if (H5Fclose(file)<0) goto error; return 0; error: return -1; -} +} /*------------------------------------------------------------------------- @@ -580,34 +580,34 @@ create_attrs_3(void) #endif /*H5_HAVE_PARALLEL*/ h5_fixname(FILENAME[2], fapl, filename, sizeof filename); - - if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, + + if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) goto error; if(create_dsets(file)<0) goto error; - + /* - * Create some(user specifies the number) attributes for each dataset + * Create some(user specifies the number) attributes for each dataset * in a loop */ - loop_num = NUM_ATTRS/BATCH_ATTRS; + loop_num = NUM_ATTRS/BATCH_ATTRS; for(i=0; i<loop_num; i++) { for(j=0; j<NUM_DSETS; j++) { - sprintf(dset_name, "dataset %d", j); - open_t.start = retrieve_time(); + sprintf(dset_name, "dataset %d", j); + open_t.start = retrieve_time(); if((dataset = H5Dopen(file, dset_name)) < 0) goto error; perf(&open_t, open_t.start, retrieve_time()); - + for(k=0; k<BATCH_ATTRS; k++) { - sprintf(attr_name, "some attrs for each dset %d %d", - i, k); - attr_t.start = retrieve_time(); - if((attr = H5Acreate(dataset, attr_name, - H5T_NATIVE_DOUBLE, small_space, H5P_DEFAULT)) + sprintf(attr_name, "some attrs for each dset %d %d", + i, k); + attr_t.start = retrieve_time(); + if((attr = H5Acreate(dataset, attr_name, + H5T_NATIVE_DOUBLE, small_space, H5P_DEFAULT)) < 0) goto error; if (H5Aclose(attr) < 0) goto error; perf(&attr_t, attr_t.start, retrieve_time()); @@ -632,7 +632,7 @@ create_attrs_3(void) if (facc_type == FACC_DEFAULT || (facc_type != FACC_DEFAULT && MAINPROCESS)) #endif /*H5_HAVE_PARALLEL*/ { - /* Calculate the average time */ + /* Calculate the average time */ open_t.avg = open_t.total / (loop_num*NUM_DSETS); close_t.avg = close_t.total / (loop_num*NUM_DSETS); attr_t.avg = attr_t.total / (NUM_ATTRS*NUM_DSETS); @@ -640,7 +640,7 @@ create_attrs_3(void) /* Print out the performance result */ fprintf(stderr, "3. Create %d attributes for each of %d existing datasets for %d times\n", BATCH_ATTRS, NUM_DSETS, loop_num); - print_perf(open_t, close_t, attr_t); + print_perf(open_t, close_t, attr_t); } if (H5Fclose(file)<0) goto error; @@ -655,16 +655,16 @@ error: /*------------------------------------------------------------------------- * Function: retrieve_time * - * Purpose: Returns time in seconds, in a double number. + * Purpose: Returns time in seconds, in a double number. * * Programmer: Raymond Lu - * Friday, Oct 3, 2003 + * Friday, Oct 3, 2003 * * Modifications: * *------------------------------------------------------------------------- */ -double retrieve_time(void) +double retrieve_time(void) { #ifdef H5_HAVE_PARALLEL if(facc_type == FACC_DEFAULT) { @@ -673,8 +673,8 @@ double retrieve_time(void) gettimeofday(&t, NULL); return ((double)t.tv_sec + (double)t.tv_usec / 1000000); #ifdef H5_HAVE_PARALLEL - } else { - return MPI_Wtime(); + } else { + return MPI_Wtime(); } #endif /*H5_HAVE_PARALLEL*/ } @@ -683,11 +683,11 @@ double retrieve_time(void) /*------------------------------------------------------------------------- * Function: perf * - * Purpose: Calculate total time, maximal and minimal time of + * Purpose: Calculate total time, maximal and minimal time of * performance. * * Programmer: Raymond Lu - * Friday, Oct 3, 2003 + * Friday, Oct 3, 2003 * * Modifications: * @@ -710,7 +710,7 @@ void perf(p_time *perf_t, double start_t, double end_t) MPI_Reduce(&t, &reduced_t, 1, MPI_DOUBLE, MPI_SUM, 0, MPI_COMM_WORLD); reduced_t /= mpi_size; - + MPI_Reduce(&t, &t_max, 1, MPI_DOUBLE, MPI_MAX, 0, MPI_COMM_WORLD); MPI_Reduce(&t, &t_min, 1, MPI_DOUBLE, MPI_MIN, 0, @@ -739,10 +739,10 @@ void perf(p_time *perf_t, double start_t, double end_t) /*------------------------------------------------------------------------- * Function: print_perf * - * Purpose: Print out performance data. + * Purpose: Print out performance data. * * Programmer: Raymond Lu - * Friday, Oct 3, 2003 + * Friday, Oct 3, 2003 * * Modifications: * @@ -752,7 +752,7 @@ void print_perf(p_time open_t, p_time close_t, p_time attr_t) { fprintf(stderr, "\t%s:\t\tavg=%.6fs;\tmax=%.6fs;\tmin=%.6fs\n", open_t.func, open_t.avg, open_t.max, open_t.min); - fprintf(stderr, "\tH5Dclose:\t\tavg=%.6fs;\tmax=%.6fs;\tmin=%.6fs\n", + fprintf(stderr, "\tH5Dclose:\t\tavg=%.6fs;\tmax=%.6fs;\tmin=%.6fs\n", close_t.avg, close_t.max, close_t.min); if(NUM_ATTRS) fprintf(stderr, "\tH5A(create & close):\tavg=%.6fs;\tmax=%.6fs;\tmin=%.6fs\n", @@ -763,14 +763,14 @@ void print_perf(p_time open_t, p_time close_t, p_time attr_t) /*------------------------------------------------------------------------- * Function: main * - * Purpose: Tests + * Purpose: Tests * * Return: Success: exit(0) * * Failure: exit(1) * * Programmer: Raymond Lu - * Friday, Oct 3, 2003 + * Friday, Oct 3, 2003 * * Modifications: * @@ -795,22 +795,22 @@ main(int argc, char **argv) MPI_Comm_rank(MPI_COMM_WORLD, &mpi_rank); #endif /*H5_HAVE_PARALLEL*/ } - + #ifdef H5_HAVE_PARALLEL if (facc_type == FACC_DEFAULT || (facc_type != FACC_DEFAULT && MAINPROCESS)) #endif /*H5_HAVE_PARALLEL*/ fprintf(stderr, "\t\tPerformance result of metadata for datasets and attributes\n\n"); - + fapl = H5Pcreate (H5P_FILE_ACCESS); if(facc_type == FACC_MPIO || facc_type == FACC_MPIPOSIX) { #ifdef H5_HAVE_PARALLEL - if(facc_type == FACC_DEFAULT || facc_type == FACC_MPIO) + if(facc_type == FACC_DEFAULT || facc_type == FACC_MPIO) H5Pset_fapl_mpio(fapl, MPI_COMM_WORLD, MPI_INFO_NULL); - else if(facc_type == FACC_MPIPOSIX) + else if(facc_type == FACC_MPIPOSIX) H5Pset_fapl_mpiposix(fapl, MPI_COMM_WORLD, FALSE); #endif /*H5_HAVE_PARALLEL*/ } - + nerrors += create_dspace()<0 ?1:0; if((RUN_TEST & TEST_1) || !RUN_TEST) @@ -824,7 +824,7 @@ main(int argc, char **argv) if (H5Sclose(small_space)<0) goto error; h5_cleanup(FILENAME, fapl); - + if(facc_type == FACC_MPIO || facc_type == FACC_MPIPOSIX) { #ifdef H5_HAVE_PARALLEL /* MPI_Finalize must be called AFTER H5close which may use MPI calls */ @@ -837,7 +837,7 @@ main(int argc, char **argv) if (facc_type != FACC_DEFAULT && MAINPROCESS) #endif /*H5_HAVE_PARALLEL*/ printf("All metadata performance tests passed.\n"); - + return 0; error: diff --git a/perform/pio_engine.c b/perform/pio_engine.c index 153f823..6bad358 100644 --- a/perform/pio_engine.c +++ b/perform/pio_engine.c @@ -621,7 +621,7 @@ do_write(results *res, file_descr *fd, parameters *parms, long ndsets, h5count[0] = buf_size/blk_size; } /* end else */ hrc = H5Sselect_hyperslab(h5dset_space_id, H5S_SELECT_SET, - h5start, h5stride, h5count, h5block); + h5start, h5stride, h5count, h5block); VRFY((hrc >= 0), "H5Sselect_hyperslab"); } /* end if */ else { @@ -1097,7 +1097,7 @@ do_read(results *res, file_descr *fd, parameters *parms, long ndsets, h5count[0] = buf_size/blk_size; } /* end else */ hrc = H5Sselect_hyperslab(h5dset_space_id, H5S_SELECT_SET, - h5start, h5stride, h5count, h5block); + h5start, h5stride, h5count, h5block); VRFY((hrc >= 0), "H5Sselect_hyperslab"); } /* end if */ else { @@ -1462,7 +1462,7 @@ do_fopen(parameters *param, char *fname, file_descr *fd /*out*/, int flags) GOTOERROR(FAIL); } - + /* The perils of POSIX I/O in a parallel environment. The problem is: * * - Process n opens a file with truncation and then starts @@ -1524,7 +1524,7 @@ do_fopen(parameters *param, char *fname, file_descr *fd /*out*/, int flags) } /* end if */ else { /* Set the file driver to the MPI-I/O driver */ - hrc = H5Pset_fapl_mpio(acc_tpl, pio_comm_g, h5_io_info_g); + hrc = H5Pset_fapl_mpio(acc_tpl, pio_comm_g, h5_io_info_g); if (hrc < 0) { fprintf(stderr, "HDF5 Property List Set failed\n"); GOTOERROR(FAIL); @@ -1559,7 +1559,7 @@ do_fopen(parameters *param, char *fname, file_descr *fd /*out*/, int flags) } break; - } + } done: return ret_code; @@ -1632,10 +1632,10 @@ do_cleanupfile(iotype iot, char *fname) { if (pio_mpi_rank_g != 0) return; - + if (clean_file_g == -1) clean_file_g = (getenv("HDF5_NOCLEANUP")==NULL) ? 1 : 0; - + if (clean_file_g){ switch (iot){ case POSIXIO: diff --git a/perform/pio_perf.c b/perform/pio_perf.c index 0e816fc..cde0545 100644 --- a/perform/pio_perf.c +++ b/perform/pio_perf.c @@ -608,7 +608,7 @@ run_test(iotype iot, parameters parms, struct options *opts) pio_time_destroy(res.timers); } - /* + /* * Show various statistics */ /* Write statistics */ @@ -721,7 +721,7 @@ run_test(iotype iot, parameters parms, struct options *opts) /* * Function: output_all_info - * Purpose: + * Purpose: * Return: Nothing * Programmer: Bill Wendling, 29. January 2002 * Modifications: @@ -776,7 +776,7 @@ accumulate_minmax_stuff(minmax *mm, int count) { int i; minmax total_mm; - + total_mm.sum = 0.0; total_mm.max = -DBL_MAX; total_mm.min = DBL_MAX; diff --git a/perform/pio_standalone.h b/perform/pio_standalone.h index bf80544..4a67ba0 100644 --- a/perform/pio_standalone.h +++ b/perform/pio_standalone.h @@ -50,7 +50,7 @@ #define HDstrdup(S) _strdup(S) #else /* WIN32 */ -#if !defined strdup && !defined H5_HAVE_STRDUP +#if !defined strdup && !defined H5_HAVE_STRDUP extern char *strdup(const char *s); #endif @@ -58,9 +58,9 @@ extern char *strdup(const char *s); #endif /* WIN32 */ -#define HDstrcmp(S,T) strcmp(S,T) +#define HDstrcmp(S,T) strcmp(S,T) #define HDstrlen(S) strlen(S) -#define HDstrncmp(S,T,L) strncmp(S,T,L) +#define HDstrncmp(S,T,L) strncmp(S,T,L) #define HDstrncpy(X,Y,Z) strncpy(X,Y,Z) #define HDstrchr(S,C) strchr(S,C) #define HDfree(M) free(M) @@ -74,7 +74,7 @@ extern char *strdup(const char *s); #define HDclose(F) close(F) #ifdef WIN32 - #ifdef __MWERKS__ + #ifdef __MWERKS__ #define HDlseek(F,O,W) lseek(F,O,W) #else /*MSVS */ #define HDlseek(F,O,W) _lseeki64(F,O,W) |