summaryrefslogtreecommitdiffstats
path: root/perform/pio_perf.h
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r11265] Purpose:Albert Cheng2005-08-191-0/+1
| | | | | | | | | | | | | New feature Description: All datasets were 1D only before. Added -g to use 2D datasets such that it allows more options in testing various access patterns. Platforms tested: heping pp. Misc. update:
* [svn-r11237] Purpose:Albert Cheng2005-08-131-0/+5
| | | | | | | | | | | | | | | | | New Feature. Description: Added code and changes so that h5perf (pio) can be built by standalone mode (that is built by just "h5pcc" without all these internal files.) With the standalone mode, h5perf can be built against different versions of hdf5 library and to contrast the performance among them. (Note that pio_standalone.c and pio_standalone.h are used in standalone build only.) Platforms tested: Tested in copper and heping.
* [svn-r7091] Purpose:Quincey Koziol2003-06-241-1/+0
| | | | | | | | | | | | | Code cleanup Description: Remove the fill-value option entirely, since the 1.5.x library's default behavior is now the same as the 1.4.x behavior and also there is no corresponding code for implementing fill-values with the POSIX or MPI-I/O tests. Platforms tested: FreeBSD 4.8 (sleipnir) w/parallel too small to need h5committest
* [svn-r5798] Purpose:Quincey Koziol2002-07-151-0/+1
| | | | | | | | | | New feature. Description: Added MPI-posix VFL driver support. Platforms tested: FreeBSD 4.6 (sleipnir) w/parallel & IRIX64 6.5 (modi4) w/parallel
* [svn-r5760] Purpose:Quincey Koziol2002-07-021-1/+2
| | | | | | | | | | New features, etc. Description: Bring over all the recent changes from the release branch. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5720] Purpose:Quincey Koziol2002-06-271-0/+1
| | | | | | | | | | New Feature Description: Added support for collective I/O with MPI and HDF5 access methods. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5718] Purpose:Quincey Koziol2002-06-271-7/+15
| | | | | | | | | | | | New Feature Description: Added interleaved block pattern to MPI and HDF5 access methods. Also, changed the blocks to just use the same size as the regular blocks for I/O, instead of a separate block size. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5667] Purpose:Quincey Koziol2002-06-191-2/+2
| | | | | | | | | | Code cleanup Description: Turn on more warnings in the IRIX builds and clean them up. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5539] Description:Albert Cheng2002-06-061-3/+4
| | | | | | Added the '-D v' option for "verify data correctness". Platforms tested: modi4, eirene, burrwhite (all pp).
* [svn-r5531] Purpose:Bill Wendling2002-06-041-0/+1
| | | | | | | | | Feature Add Description: Added support for testing only the "write" operations. Use the "-w" or "--write-only" flags for this. Platforms tested: Linux (parallel) & Modi4 (parallel)
* [svn-r5503] Purpose:Albert Cheng2002-06-011-0/+7
| | | | | | | | | Features Description: Added a few macros to print rank and size of MPI_COMM_WORLD in a unifed style. Platforms tested: modi4, eirene, burrwhite
* [svn-r5486] Purpose:Albert Cheng2002-05-301-0/+1
| | | | | | | | | | | Code cleanup and new feature. Description: Cleaned out some old debug print statments. Added option -B for interleaved I/O block size. (Just parsing and sanity check is done. Real I/O implementation is not done yet.) Platforms tested: eirene(pp)
* [svn-r5472] Purpose:Albert Cheng2002-05-291-1/+1
| | | | | | | | | | | | | bug fix Description: pio_info_g has been moved to the test/libh5test.a but the pio_* source files still have the old definition and declaration. Some compilers hated the duplcation. Solution: Replaced the duplication with #include h5test.h and added test/ to the include search path too. Platforms tested: eirene, modi4.
* [svn-r5463] Description:Albert Cheng2002-05-281-0/+5
| | | | | | | | | | | Folded the changes made in v1.4 into v1.5. print library version information in help page too. Specify the nofill feature supported in v1.5 only. Print the values of the KB, MB and GB in case a user wants to see them. Setup a macro, H5_HAVE_NOFILL, to indicate if Dataset no fill feature is supported. If not, --no-fill is an invalid option. Platforms tested: modi4
* [svn-r5456] Purpose:Bill Wendling2002-05-221-2/+6
| | | | | | | | | | Update Description: Updating the source for the PIO performance tests with the current code that's in the V1.4 branch. It includes the newest command-line parameters. Platforms tested: Linux-pp
* [svn-r5426] Purpose:Albert Cheng2002-05-161-0/+1
| | | | | | | Folded the added feature of setting MPI Info object from v1.4 to this branch. Platforms tested: modi4
* [svn-r5407] Purpose:Albert Cheng2002-05-131-1/+1
| | | | | | | | | | | | | | | | | | Bug fix Description: Was not able to handle data size (file size) larger than 32bits. Was using long, which is only 4 bytes big in SP, thus overflowing into negative when trying to address 2GB or larger. Solution: Changed those variables involved in file size/offset calculation to type off_t. (If a certain system/compiler has off_t defined as 4 bytes, it can't write to file size larger than 2GB anyway.) Note that the lseek of SP with -D_LARGE_FILE still fails for offset larger than 2GB (works for 2GB). That has to be fixed soon. Platforms tested: burrwhite (linux 2.4) and modi4 parallel.
* [svn-r5368] Purpose:Albert Cheng2002-05-071-1/+1
| | | | | | | | | | Bug fix, feature Description: Added code to time pure MPI_File_write_xxx and read_xxx routines. Moved the setting of the timer_g to when timer is created (new) and destroyed. Platforms tested: modi4pp
* [svn-r5367] Purpose:Bill Wendling2002-05-061-3/+6
| | | | | | | | | | | | | | | | | Modification Description: Put some of the variables into the global space so that random functions can access them. (The output and timer variables which point to the output file and timer resp.) Placed the debug level 4 prints into the timer module so that it's easier to automatically put timer start/stop printfs for new timers which are created. Added timers for MPI Time calls (called HDF5_MPI_WRITE and HDF5_MPI_READ). Platforms tested: Linux
* [svn-r5348] Purpose:Bill Wendling2002-05-031-2/+0
| | | | | | | | | | | Bug Fix Description: There was a duplicate declaration of print_indent() in the header and in the source files. Solution: Removed the public declaration and made the function static again. Platforms tested: Arabica
* [svn-r5334] Purpose:Bill Wendling2002-05-021-1/+5
| | | | | | | | | Port Description: Brought forward the changes (timing debug prints) from the 1.4 branch. Platforms tested: Linux
* [svn-r5232] Purpose:Albert Cheng2002-04-231-1/+1
| | | | | | | | | | | Bug fix Description: The symbol "RAW" is already defined in some ioctl.h files. Changed it to RAWIO. Platforms tested: Tflops. (I am commiting this from TFLOPS. Will check it out immediate to test on local machines.)
* [svn-r5205] Purpose:Albert Cheng2002-04-191-0/+1
| | | | | | | | | | | | | | Code cleanup Description: Platform dependent code related to the struct stat and fstat calls polluted source codes. Hard to maintain. Solution: Platform dependent code are moved to H5private.h and then internal code can #include H5private.h. Repeat those macro definition for the stdio and multi drivers since they area examples for writing a virtual file driver. They must not use any internal code. Platforms tested: eirene (parallel), modi4 (serial including gass driver.)
* [svn-r4964] Purpose:Albert Cheng2002-02-141-0/+2
| | | | | | | | | | | | | | Change default actions. Description: Change the default maximum number of processes (-P) to use all processes instead of just 1 (old default). Someone most likely wants to test the I/O performance with all processes involved. Also starts performance measurement with maximum number of processes and decrement it with each loop. If the performance measurement needs to restart, it can run with fewer processes if those loops have completed. Platforms tested: modi4 and eirene.
* [svn-r4882] Purpose:Bill Wendling2002-01-301-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Feature add and algorithm reworking. Description: Added a "--debug" flag so we can print out various extra debugging information. Reworked the algorithm so that it's printing the correct throughput. Here's how it's supposed to work: process T_0 T_1 T_2 T_3 ... T_n iteration 1 2 . . . m Retrieve the maximum time from each iteration over the number of processes. (So, if T_i had the maximum time in iteration j, then use that time). Calculate the "Throughput" of iteration j: S_j = (raw_size / T_i) Collect that information over all of the iterations. Then output the Max, Min, and Ave of all of the S_k's. Platforms tested: Linux (pp)
* [svn-r4746] Bill Wendling2001-12-191-0/+4
| | | | | | | | | | | | | | | | Purpose: Feature Fix Description: Changed so the "pio_perf" module handles creating and destroying the MPI Comm. Worked it so we get the minimum, maximum, and average times over a set of iterations. Solution: Lots. Had to pull the MPI Comm code from the "pio_engine" module and place it in the "pio_perf" module. Then worked on a way to have all processes send their time output to process 0, who collects it and gives back the min, max, and avg times for the iterations. Platforms tested: Linux. Doesn't work if you use more than 1 processor...*hrmph*
* [svn-r4733] Bill Wendling2001-12-181-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Purpose: Feature Changes Description: Okay, I needed to add in more parameters so that the user can modify how things are supposed to work with the PIO programs. Also needed to change the algorithm a bit to make these work. And needed to add in timing for the READ option. Solution: Added the above things. The parameters took a major rewrite of the command-line parsing stuff. Here's the usage statement: usage: pio_perf [OPTIONS] OPTIONS -h, --help Print a usage message and exit -d N, --num-dsets=N Number of datasets per file [default:1] -f S, --file-size=S Size of a single file [default: 64M] -F N, --num-files=N Number of files [default: 1] -H, --hdf5 Run HDF5 performance test -i, --num-iterations Number of iterations to perform [default: 1] -m, --mpiio Run MPI/IO performance test -o F, --output=F Output raw data into file F [default: none] -P N, --max-num-processes=N Maximum number of processes to use [default: 1] -p N, --min-num-processes=N Minimum number of processes to use [default: 1] -r, --raw Run raw (UNIX) performance test -X S, --max-xfer-size=S Maximum transfer buffer size [default: 1M] -x S, --min-xfer-size=S Minimum transfer buffer size [default: 1K] F - is a filename. N - is an integer >=0. S - is a size specifier, an integer >=0 followed by a size indicator: K - Kilobyte M - Megabyte G - Gigabyte Example: 37M = 37 Megabytes Platforms tested: Linux, but not fully finished...
* [svn-r4699] Purpose:Albert Cheng2001-12-111-7/+7
| | | | | | | | Bug fixes, feature, ... Description: Now it can do raw write. Platforms tested: modi4(pp), eirene (pp)
* [svn-r4691] Bill Wendling2001-12-101-0/+1
| | | | | | | | | Purpose: Small Fixes Description: After conversation with Albert, here are some small fixes for the performance stuff. Not too significant. Though, we did add the "buffer size" as a parameter I pass to the engine.
* [svn-r4689] Bill Wendling2001-12-101-1/+14
| | | | | | | | | | Purpose: Feature Fix Description: Added code so that it will actually output some of the timing measurements. Platforms tested: Linux
* [svn-r4687] Bill Wendling2001-12-101-0/+2
| | | | | | | | | | Purpose: Small warning removals Description: Just removed a few more warnings to make the compile go a bit smoother... Platforms tested: Linux
* [svn-r4608] Bill Wendling2001-11-151-0/+8
| | | | | | | | | | | | | Purpose: bug Fix Description: Changed the code so that if parallel stuff isn't enabled, then we don't compile the parallel code. Solution: Cleaned up the code and put #ifdef's around it checking for parallel flags. Platforms tested: Linux
* [svn-r4592] Purpose:Albert Cheng2001-11-071-0/+26
New addition Description: Initial version of the Parallel I/O performance measurement program. Not fully implemented yet but checking them in before I may destroy them by accident. Don't run this in small file system (like AFS or eirene) since it generates gigabytes test files. Platforms tested: modi4 64bits. It compiled and ran but took a long time because the current test parametes are too "wild".