summaryrefslogtreecommitdiffstats
path: root/testpar
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r3819] Purpose:Albert Cheng2001-04-181-26/+18
| | | | | | | | | | | | | Bug fix and clean up. Description: The part that should test 4GB was actually testing 2GB due to typo. Solution: Corrected the typo to use 4GB constant. Rearranged the code to group 2GB and 4GB tests in their own. Removed some duplicated testing code. Platforms tested: modi4.
* [svn-r3792] Purpose:Albert Cheng2001-04-096-7/+7
| | | | | | | | | Minor bug fix Description: Changed all #include that is for non-system files (hdf5's own header files) from <...> style to "...". Platforms tested: modi4 Parallel (-64 and -n32)
* [svn-r3724] Purpose:Albert Cheng2001-03-271-1/+1
| | | | | | | | | | | | Improvement Description: Changed the default value of $NPROCS from 2 to 3. This is the value libSAF uses since 3 processes have a much bigger chance catching parallel errors than just 2 processes. Changed the default dataset sizes from 800 to 1200 so that it is a multiple for 3 (and 8 too which is ofter used in the Tflops test.) Platforms tested: Modi4 (IRIX64) both serial and parallel modes.
* [svn-r3723] Purpose:Albert Cheng2001-03-271-0/+182
| | | | | | | | | | | | | new test Description: Added two new tests. test_mpio_offset: Verify that MPI_Offset exceeding 2**31 can be computed correctly. test_mpio_gb_file Test if MPIO can write file from under 2GB to over 2GB and then from under 4GB to over 4GB. Platforms tested: modi4(-64, -n32), tflops.
* [svn-r3304] Purpose:Quincey Koziol2001-01-182-6/+1
| | | | | | | | Code update Description: Remove ragged array code & tests from library before release. Platforms tested: FreeBSD 4.2 (hawkwind)
* [svn-r3119] Purpose:Albert Cheng2000-12-124-20/+31
| | | | | | | | | | | | | | | | | | | New features Description: Some testers found the filename lengths too short. Changed it to use the FILENAME_MAX usually defined in stdio.h. If not, set it to 512 which should be sufficient for users but should not exceed any system limits. Also added a new test parameters of ndatasets so that the tester can specific a different number of datasets for the multiple datasets tests. Changed the datatype of datasets created to DOUBLE. This eliminates the current racing conditions. But the racing bugs during conversion still need to be tracked down and squashed. Platforms tested: Modi4 -64.
* [svn-r3009] Purpose:Albert Cheng2000-11-281-9/+27
| | | | | | | | | | | | | | New parallel test features Description: Added test cases: INDEPENDENT write with some processes do not participate at all. The library should not hang for this case. COLLECTIVE read/write with some processes asking for zero elements. The library should work properly and not hanging. Some house cleaning: get rid of a conditional directive that was fixed already. Platforms tested: IRIX64,-64,parallel
* [svn-r3007] Purpose:Albert Cheng2000-11-281-9/+9
| | | | | | | | | | Feature, kind of Description: Moved the multiple dataset test out of the write-test part so that it can be skipped or tested independent of the other tests. Platforms tested: IRIX64,-64,parallel.
* [svn-r3005] Purpose:Quincey Koziol2000-11-271-4/+4
| | | | | | | | Backward compatibility code Description: Add in code to allow the library to emulate the v1.2 API and behavior. Platforms tested: FreeBSD 4.2 (hawkwind)
* [svn-r2993] Purpose:Albert Cheng2000-11-211-8/+58
| | | | | | | | | | | | | | New feature Description: Added tests to make sure collective read or write works correctly even if some process has no data to transfer. ZROW--process 0 asks for zero rows of data while other processes ask for a slab of rows. ZCOL--process 0 asks for zero columns of data while other processes ask for a slab of columns. Platforms tested: IRIX64 parallel (-64,-n32). cvS: ----------------------------------------------------------------------
* [svn-r2983] Purpose:Albert Cheng2000-11-212-9/+9
| | | | | | | | | | | | | | | Simple changes Description: testphdf5.h: Call MPI_Abort when error is detected. MPI_Finalized was used before but it might hang if the test has already encountered errors. Also, it does not do the H5Eprint any more since auto report is on. t_mdest.c: Changed the variable name of rank and nprocs to mpi_rank and mpi_size so that it is the same with the other tests and can use the VRFY macro call. Platforms tested: modi4-64.
* [svn-r2973] Purpose:Albert Cheng2000-11-171-40/+41
| | | | | | | | | | | | | | Bug fix, cleanup,... Description: The test was doing the hyperslab select incorrectly (thinking count was the block length. Solution: Fixed it to do the correct hyperslab selection. Changed it to calculate different data for different datasets. Changed output by rows instead by cols. It tests the purpose of creating multiple datasets the same but runs faster. Platforms tested: modi4-64.
* [svn-r2710] Purpose:Albert Cheng2000-10-204-23/+145
| | | | | | | | | | | | | | Features, kind of. Description: Separated the MPI features test into its own independent program so that it can be tested on its own without too much HDF5 stuff involved. Added automatic removal of temporary test files after the tests completed. Reduced the size of the dataset dimensions to avoid tripping the SGI MPI problems of running out of internal mpi type entries. Platforms tested: O2K -64
* [svn-r2641] Purpose:Albert Cheng2000-10-094-23/+143
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added features Description: There were no automatic tests for transfering zero elements. Solution: t_dset.c: Added two new patterns of ZROW (zero rows for process 0) and ZCOL(zero columns for process 0). ZROW test was added but it failed because the current library does not accept it. Not compiled in now. Need to fix the library before turning it back on again and also to add the ZCOL test. t_mdset.c: Added statement to show progress. Also the MPI_Barrier() call get processes synchornoized. It eliminates the racing condition but this is not a permenant solution. The library code needs to be fixed. testphdf5.c: Added a bunch of MPI_Type_XXX debug code. Added the -md option to skip the multiple datasets tests. Changed the cosmitic appearance of the banner messages. testphdf5.h: When an error is detected, the old way was to call MPI_Finalize() before exiting. This sometimes hangs because some processes may be waiting for a message of a different tag. Changed to call MPI_Abort() for now so that the whole MPI job would abort rather than hanging due resource limits exceeded. Added the definition of ZROW and ZCOL. Platforms tested: Modi4 -64.
* [svn-r2590] Purpose:Albert Cheng2000-09-241-96/+111
| | | | | | | | | | | | | | | | | | | Bug fix Description: The old code was using count as the block size. The result was asking for a slab of count blocks, each of 1 element. The recent change in the hyperslab algorithm exposed this problem. (The old algorithm merge the count blocks back into 1 big block of count elements.) (This error was due to that the block argument was not in the very early version of hyperslab. Then it was not updated since it had been "working".) Solution: Added in the block argument to the setup and calculation of slab and its data. Also found a dumb error in the dataset_fill algorithm in which stride was used in the calculation. Not so for the cases of BYROW and BYCOL. Platforms tested: modi4 parallel, both -64 an -n32 modes.
* [svn-r1947] Changed the test files prefix to use the h5_fixname() in ↵Albert Cheng2000-01-265-43/+43
| | | | | | | | | | | | test/libh5test.a. Makefile.in: Added test/ as one of the -I directories to search for header files. Needed because <h5test.h> is used. t_file.c t_mpi.c testphdf5.c testphdf5.h: Added FILENAME to meet the assumption in h5test.h. (May use CLEANUP in the future.) Moved the prefix setting to the h5_fixname().
* [svn-r1914] t_mdset.c:Albert Cheng1999-12-202-6/+5
| | | | | | | Increase the test size to 32. Put in a check to make sure number of processes are not bigger than SIZE. testphdf5.c: Fixed a mistake in the prototype of pause_proc to reflect no arguments.
* [svn-r1899] Chagned to venue to call pause_proc via the profile feature of ↵Albert Cheng1999-12-171-12/+13
| | | | MPI_Init.
* [svn-r1883] Added libh5test.a links so that parallel tests may make use of ↵Albert Cheng1999-12-171-2/+3
| | | | | | routines in the other test library.
* [svn-r1882] New entries automatically created by one of gmake/configure/autoconfAlbert Cheng1999-12-171-0/+32
| | | | or their buddies, due to the addition of new test module.
* [svn-r1873] added new test for multiple dataset writes to parallel testsChee-Wai Lee1999-12-103-2/+65
|
* [svn-r1859] * 1999-12-09Robb Matzke1999-12-091-4/+4
| | | | | | | | | | | | | | ** src/H5FDpublic.h Added a #define for H5_HAVE_VFL to make life easier for application programmers. ** config/depend1 A minor tweak to the way GNU systems generate file dependencies for the Makefiles. ** src/H5T.c Fixed a bug with enumeration types not having the correct object header pointer.
* [svn-r1858] Changed the default testfiles to be in /tmp instead of current ↵Albert Cheng1999-12-071-1/+5
| | | | | | | directory. Current directory in which the parallel code is compiled is usually not suitable for parallel I/O test.
* [svn-r1818] Testpar have been integrated. File no longer needed.Albert Cheng1999-11-041-44/+0
|
* [svn-r1806] * 1999-11-02Robb Matzke1999-11-021-4/+127
| | | | | | | | | | | | | ** bin/rpmsync ** config/depend1.in Tweaks for versions of `make' that can't search directories. ** examples/Dependencies ** src/Dependencies ** test/Dependencies ** testpar/Dependencies ** tools/Dependencies Regenerated all these with more complete path names.
* [svn-r1802] Changes since 19991019Robb Matzke1999-11-012-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./MANIFEST ./configure.in ./configure [REGENERATED] Added more checking for `make' features. ./Makefile.in ./doc/Makefile.in ./doc/html/Makefile.in ./doc/html/Tutor/Makefile.in ./examples/Makefile.in ./pablo/Makefile.in ./src/Makefile.in ./test/Makefile.in ./testpar/Makefile.in ./tools/Makefile.in ./config/commence.in ./config/conclude.in ./config/depend.in [REMOVED] ./config/depend1.in [NEW] ./config/depend2.in [NEW] ./config/depend3.in [NEW] ./config/depend4.in [NEW] ./config/dependN.in [NEW] The directory search stuff was moved into commence.in, thereby shortening the Makefile.in prologues. ./doc/html/Dependencies [NEW] ./doc/html/Tutor/Dependencies [NEW] ./examples/Dependencies [NEW] ./src/Dependencies [NEW] ./test/Dependencies [NEW] ./testpar/Dependencies [NEW] ./tools/Dependencies [NEW] The `.distdep' files were all renamed to `Dependencies' to make them more obvious. They are required (but may be empty) in every directory that has a Makefile.in that ends with @CONCLUDE@ (you'll get an obvious error from make if you forgot to create one). ./bin/trace ./src/H5.c Added H5E_major_t and H5E_minor_t although tracing only prints the integer value. ./src/H5E.c ./src/H5Epublic.h Added tracing information. ./src/H5FDcore.c ./src/H5FDfamily.c ./src/H5FDgass.c ./src/H5FDmpio.c ./src/H5FDsec2.c ./src/H5FDstdio.c Fixed places where FUNC_LEAVE() evaluated it's argument more than once. Added tracing information. Wrapped long lines. ./config/gnu-flags Fixed a syntax error when we don't have a gnu compiler.
* [svn-r1568] Changes since 19990730Robb Matzke1999-08-102-19/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- This extensive change is the virtual file layer implementation. I've ported and tested the sec2, family, and core drivers and only ported the mpio driver (Albert will test it). So if you need MPIO I would recommend sticking with the previous version for a while. You will get a few compile warnings about split and stdio drivers not being implemented and possibly tracing information not inserted in some of the drivers. You can safely ignore them but I plan to fix them. I'm still working on the split driver because I just realized that it needs a part of the VFL that isn't written yet. Documentation is being updated also because there were some minor changes (mostly just name changes). It should be available on my web site later this week. ./MANIFEST ./src/Makefile.in ./src/hdf5.h ./src/H5Flow.c [REMOVED] ./src/H5Fstdio.c [REMOVED] ./src/H5Fsec2.c [REMOVED] ./src/H5Fsplit.c [REMOVED] ./src/H5Fmpio.c [REMOVED] ./src/H5Ffamily.c [REMOVED] ./src/H5Fcore.c [REMOVED] ./src/H5MFpublic.h [REMOVED] ./src/H5FD.c [NEW] ./src/H5FDcore.c [NEW] ./src/H5FDcore.h [NEW] ./src/H5FDfamily.c [NEW] ./src/H5FDfamily.h [NEW] ./src/H5FDmpio.c [NEW] ./src/H5FDmpio.h [NEW] ./src/H5FDprivate.h [NEW] ./src/H5FDpublic.h [NEW] ./src/H5FDsec2.c [NEW] ./src/H5FDsec2.h [NEW] Removed/added files for virtual file layer. ./bin/trace ./src/H5.c Removed unused public datatypes and added new VFL public datatypes. Changed an error message. ./config/BlankForm ./config/dec-flags ./config/gnu-flags ./config/hpux10.20 ./config/hpux9.03 ./config/irix5.x ./config/irix6.x ./config/solaris2.x ./config/unicosmk Removed the H5F_OPT_SEEK and H5F_LOW_DFLT constants from the configuration since they're no longer applicable. The default file driver is always the sec2 driver and it always optimizes calls to lseek() or lseek64(). ./config/depend.in C preprocessor errors generated during automatic dependency building are sent to /dev/null to prevent them from appearing twice in the make output. ./src/H5AC.c ./src/H5B.c ./src/H5D.c ./src/H5F.c ./src/H5G.c ./src/H5Gent.c ./src/H5Gnode.c ./src/H5HG.c ./src/H5HL.c ./src/H5O.c ./src/H5Oattr.c ./src/H5Odtype.c ./src/H5Oefl.c ./src/H5Oshared.c ./src/H5T.c ./src/H5detect.c ./test/ohdr.c Changed H5F_ADDR_UNDEF to HADDR_UNDEF to be more consistent with the `haddr_t' datatype which is now a public type. ./src/H5D.c ./src/H5P.c ./src/H5Ppublic.h ./src/H5Tconv.c ./test/cmpd_dset.c ./test/dsets.c ./test/overhead.c ./test/tselect.c ./test/tvltypes.c The H5P_DATASET_XFER constant was changed to H5P_DATA_XFER because the properties apply to all types of I/O operations, not just datasets. ./src/H5B.c ./src/H5Bprivate.h ./src/H5D.c ./src/H5Dpublic.h ./src/H5F.c ./src/H5Farray.c ./src/H5Fistore.c ./src/H5Fprivate.h ./src/H5Fpublic.h ./src/H5Gnode.c ./src/H5Gpkg.h ./src/H5HG.c ./src/H5HL.c ./src/H5O.c ./src/H5R.c ./src/H5Sall.c ./src/H5Shyper.c ./src/H5Smpio.c ./src/H5Spoint.c ./src/H5Sprivate.h ./test/big.c ./test/h5test.c ./test/istore.c ./testpar/t_dset.c ./testpar/t_file.c ./tools/h5debug.c ./tools/h5ls.c Modified to work with the virtual file layer by calling H5FD_* functions instead of H5F_low_* functions and by passing file access and data transfer properties by object ID instead of pointer. Changed H5D_transfer_t to H5FD_mpio_xfer_t since the COLLECTIVE vs. INDEPENDENT transfer mode is specific to the MPIO file driver. Moved MPIO-specific stuff into the MPIO driver. ./src/H5B.c ./src/H5D.c ./src/H5Fprivate.h The H5F_mpio_* private functions were renamed and placed in the H5FDmpio driver except those which appeared in H5Smpio.c. ./src/H5E.c ./src/H5Epublic.h Added major error number H5E_VFL for virtual file layer related errors. ./src/H5F.c ./src/H5Fprivate.h Changed the logic that controls whether the boot block is written. Instead of assuming that the first call to write the boot block is only to allocate space, I've added a function argument which makes this explicit. Changed the way files are compared so that a driver-defined comparison function can be called. Files which belong to different drivers are always considered different. Removed H5F_driver_t since file drivers are now identified by object ID instead of a special non-user-extendible datatype. Removed all the hard-coded low-level file properties which have been replaced by the various file drivers. ./src/H5I.c ./src/H5Iprivate.h Added the H5I_inc_ref() which was removed a few months ago since we finally have a use for it. ./src/H5Ipublic.h Added the H5I_VFL object ID type to identify file drivers in the virtual file layer. ./src/H5MF.c ./src/H5MFprivate.h Moved all the allocation/deallocation code into the virtual file layer which allows file drivers to override much of it. ./src/H5P.c ./src/H5Ppublic.h Moved file driver-specific code into the various file driver files. The H5Pcopy() and H5Pclose() functions make calls into the virtual file driver to manage the memory for driver-specific file access and data transfer properties. ./src/H5private.h ./src/H5public.h The `haddr_t' type is now public. ./test/tfile.c Added a few more comments.
* [svn-r1554] Changed it to use the tflops predefined __PUMAGON__ to identifyAlbert Cheng1999-08-021-1/+1
| | | | the tflops system.
* [svn-r1515] Changes since 19990715Robb Matzke1999-07-191-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./Makefile.in [1.3] ./examples/Makefile.in [1.3] ./pablo/Makefile.in [1.3] ./src/Makefile.in [1.3] ./test/Makefile.in [1.3] ./testpar/Makefile.in [1.3] ./tools/Makefile.in [1.3] ./config/commence.in [1.3] ./config/conclude.in [1.3] ./config/depend.in [1.3] Added a `.PATH' target for Irix pmake which is identical to the VPATH used by most other `make' programs. Irix 6.5 (or 6.4?) and later `make' ignores VPATH. Started all beginning-of-line comments with `##' instead of just `#' because Irix `pmake' barfs on things like the following because it sees the `# if' as a directive: # make will barf on the following line # if running Irix pmake ./config/commence.in [1.3] Added empty definitions for optional `make' macros because Irix pmake complains if it sees a macro which has never been defined. The main body of the Makefiles can redefine these macros to whatever they need.
* [svn-r1465] src/H5Fmpio.c:Albert Cheng1999-07-121-2/+0
| | | | | | | | | | | | | Removed the unnecessary #include of mpi.h and mpio.h. (They are included already in H5public.h when applicable.) Changed couple debug printing to be controlled like the others. src/H5public.h: Officially, mpio.h should be in mpi.h but MPIO are not always supported by the vendor yet. Make the #include of mpio.h conditional when it is not in mpi.h. testpar/testphdf5.h: Removed the unnecessary #include of mpi.h and mpio.h. (They are included already in H5public.h when applicable.)
* [svn-r1446] Makefile.ibmsp is no longer needed. Configure generates the rightAlbert Cheng1999-07-081-95/+0
| | | | Makefile for it.
* [svn-r1417] t_mpi.c:Albert Cheng1999-07-034-7/+40
| | | | | | | | | | Changed it to skip the test instead of aborting when there is not enough processes to do the test. Also corrected an error in the error reporting printf statement. t_dset.c: testphdf5.c: testphdf5.h: Added option for specifying chunk dimensions.
* [svn-r1398] Purpose:Albert Cheng1999-06-304-90/+176
| | | | | | | | | | | | | | | | new feature Makefile.in: Added the dependence of *.c on the testphdf5.h t_dset.c: testphdf5.c: testphdf5.h: testphdf5 now takes optional arguements for dataset dimension sizes. That allows testing with different dimension sizes without recompiling the whole thing. Platform tested: O2K
* [svn-r1388] No longer needed because configure creates the right Makefile now.Albert Cheng1999-06-262-203/+0
|
* [svn-r1222] Cleaned up the code in testphdf5.c, mostly in the -f parsing area.Albert Cheng1999-04-272-51/+34
| | | | | Eliminated most compiler complains. Changed Tflops to use the /pfs_grande file systems. (Old /pfs is retired.)
* [svn-r1218] Added string.h since it is needed for those strxxx calls.Albert Cheng1999-04-261-0/+1
|
* [svn-r1217] Changes since 19990426Robb Matzke1999-04-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./config/commence.in ./examples/Makefile.in ./test/Makefile.in ./testpar/Makefile.in ./tools/Makefile.in Fixed some dependency problems in Makefiles. If the library version is updated then everything gets recompiled. ./src/H5G.c ./src/H5R.c Failure return value for object type functions is now H5G_UNKNOWN as documented. ./src/H5Shyper.c ./src/H5Spoint.c Fixed an unused argument warning. ./tools/h5debug.c Fixed a call to H5F_block_read() since the 4th argument is different now. ./tools/h5ls.c Added a space between the object name and class to make the output readable when the object name is longer than 24 characters. C
* [svn-r1177] Changed HDmalloc to malloc to avoid the need of using H5private.h.Albert Cheng1999-04-082-6/+3
| | | | | Removed the #ifndef MPIOTEST. MPIO tests should run all the time now that the test is more efficient.
* [svn-r1151] Changes since 19990318Robb Matzke1999-03-191-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./Makefile.in ./configure.in ./configure [REGENERATED] ./src/H5config.h.in [REGENERATED] ./config/commence.in ./config/conclude.in ./config/dec-osf4.x ./config/depend.in ./config/freebsd ./config/linux-gnu ./config/linux-gnulibc1 ./config/linux-gnulibc2 ./config/solaris2.x ./examples/Makefile.in ./src/Makefile.in ./test/Makefile.in ./testpar/Makefile.in ./tools/Makefile.in ./tools/testh5dump.sh Changes that allow hdf5 to be configured and compiled in a directory other than the source directory. This is especially useful if you want to concurrently compile with different compilers and/or compile flags, or if the hdf5 source is on read-only media like a CDROM. The changes were surprisingly easy ;-) Here's what you can do now... $ mkdir /tmp/build1 # or something $ cd /tmp/build1 $ /cdrom/hdf5/configure # where ever the source is $ make Paul, you'll have to change the testh5toh4 script similar to the way I changed testh5dump.sh. I started working on it but then gave up because of a number of problems: (1) I had to comment out all the tests that let h5toh4 choose the output file name because it always tried to put the output file in the same directory as the input file, (2) if path names are used during the h4 dump then they interfere with the diff. The test works fine when run in the source directory, but try this instead: $ gunzip <hdf5-1.1.67.tar.gz |tar xf - $ chmod -R ugo-w hdf5-1.1.67 $ mkdir build $ cd build $ ../hdf5-1.1.67/configure $ make check Dan, I didn't modify the pablo/Makefile.in because I have no way to test it. I think all you need to do is add a couple lines before the @COMMENCE@ line and add a couple search directories for header files. Anyway, it seems like almost an exact duplicate of the src/Makefile.in, so it shouldn't be a problem... ./Makefile.in Removes a few more temporary files during make clean and distclean. ./configure.in I fixed the creation of the time-stamp files so that the initial make doesn't have to regenerated all the makefiles (only GNU make users will see any change). ./src/H5R.c Changed a return type from `intn' to `int' for an API function. ./src/H5detect.c Added the volatile qualifier to a couple more variables. ./tools/h5tools.c Fixed a compiler warning about an unused local. ./tools/h5toh4.c Initialized `optind' to 1 because it's zero on my system. It should always be one on a unix system. ./tools/testh5toh4 Redirected "broken pipe" messages to /dev/null so outut is formatted correctly.
* [svn-r1149] ./configure.inRobb Matzke1999-03-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./configure [REGENERATED] ./src/H5config.h.in [REGENERATED] ./src/H5private.h Temporarily commented out the code that tries to link a simple MPI-IO application because I'm not sure how to pass $LDFLAGS and $LIBS to the compiler. Removed the `--enable-parallel=ibm' switch because the library we link with is either -lmpcc or -lmpcc_r but not both. The only way to tell is to see what compiler was specified (mpcc or mpcc_r) but if that compiler is specified then we don't need any libraries (the compiler script supplies them). That leaves just two choices: the user must use a compiler script: CC=mpcc ./configure or the user must state which library is desired: LDFLAGS='-lmpcc' ./configure --enable-parallel Checks for <setjmp.h>, longjmp(), and signal(). We don't check for setjmp() because it could be a macro (in fact, Posix requires it to be a macro) and if longjmp() is present then setjmp() is probably present too ;-) ./src/H5detect.c The alignment detection loop uses SIGBUS and setjmp/longjmp instead of fork/wait in order to get around bugs with forking in conjunction with mpich. This hasn't been tested on the SP-2 yet but it does work on the DEC Alpha. ./test/Makefile.in ./testpar/Makefile.in ./tools/Makefile.in Changed the order that libraries are linked so -lhdf5 is always before $LDFLAGS.
* [svn-r1115] Changes since 19990302Robb Matzke1999-03-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./INSTALL ./configure.in ./configure [REGENERATED] ./src/H5config.h.in [REGENERATED] Improvements for parallel library. If you have a properly working mpicc you should be able to just say: $ CC=mpicc ./configure and you will see checking for mpirun... /usr/local/mpi/bin/mpirun checking for parallel support files... skipped checking how to run on one processor... /usr/local/mpi/bin/mpirun -np 1 checking how to run in parallel... /usr/local/mpi/bin/mpirun -np $$NPROCS To quote from the INSTALL file.... *** Parallel vs. serial library The HDF5 library can be configured to use MPI and MPI-IO for parallelizm on a distributed multi-processor system. The easy way to do this is to have a properly installed parallel compiler (e.g., MPICH's mpicc or IBM's mpcc) and supply that executable as the value of the CC environment variable: [NOTE: mpcc is not tested yet] $ CC=mpcc ./configure $ CC=/usr/local/mpi/bin/mpicc ./configure If no such wrapper script is available then you must specify your normal C compiler along with the distribution of MPI/MPI-IO which is to be used (values other than `mpich' will be added at a later date): $ ./configure --enable-parallel=mpich If the MPI/MPI-IO include files and/or libraries cannot be found by the compiler then their directories must be given as arguments to CPPFLAGS and/or LDFLAGS: $ CPPFLAGS=-I/usr/local/mpi/include \ LDFLAGS=-L/usr/local/mpi/lib/LINUX/ch_p4 \ ./configure --enable-parallel=mpich If a parallel library is being built then configure attempts to determine how to run a parallel application on one processor and on many processors. If the compiler is mpicc and the user hasn't specified values for RUNSERIAL and RUNPARALLEL then configure chooses `mpirun' from the same directory as `mpicc': RUNSERIAL: /usr/local/mpi/bin/mpirun -np 1 RUNPARALLEL: /usr/local/mpi/bin/mpirun -np $${NPROCS:=2} The `$${NPROCS:=2}' will be substituted with the value of the NPROCS environment variable at the time `make check' is run (or the value 2). ./testpar/Makefile.in Saying `make check' (or `make test') will run the tests on two processors by default. If you define NPROCS then that many processors are used instead: $ NPROCS=4 make check ./configure.in Fixed (hopefully) bugs with detecting whether __attribute__ and __FUNCTION__ are special keywords for the compiler. ./Makefile.in Saying `make install' from the top level directory shows instructions for using shared libraries. ./config/commence.in ./src/Makefile.in ./test/Makefile.in ./testpar/Makefile.in ./tools/Makefile.in Moved the @top_srcdir@ into the makefiles because it was expanded too early and had the wrong value. ./INSTALL Added a warning that if the wrong version of hdf4 tools are installed then `make check' will fail in the tools directory.
* [svn-r1112] Changes since 19990301Robb Matzke1999-03-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./INSTALL Reorganized and added some additional examples. ./MANIFEST ./aclocal.m4 [NEW] ./configure.in ./configure [REGENERATED] ./src/H5config.h.in [REGENERATED] ./bin/ltconfig [NEW] ./bin/ltmain.sh [NEW] Added tests to determine how to compile shared libraries and how to link programs with them before the libraries are installed. Also how to install and uninstall shared libraries. The configure step also prints the names of the config files it's trying to load for easier debugging. ./bin/config.guess ./bin/config.sub Replaced with a newer version from GNU. The changes we made to that file to report `irix6.x' and `FreeBSD' without version numbers have been incorporated into configure.in instead. In the future, do not change these two files (see the top of configure.in instead). By the way, this update was required to get shared libraries working. ./config/linux [REMOVED] ./config/linux-gnulibc1 [NEW] ./config/linux-gnu [NEW] ./config/alpha-dec [REMOVED] ./config/alpha-dec-osf4.0 [REMOVED] ./config/dec-osf4.x [NEW] ./config/irix5.3 [REMOVED] ./config/irix5.x [NEW] ./config/irix64 [REMOVED] ./config/freebsd Moved config files around to agree with output from the new config.guess. The linux file was split into gnu (RedHat), gnulibc1, and gnulibc2 versions. The alpha-dec file was removed (I think it was unused) and the alpha-dec-osf4.0 was changed to dec-osf4.x. The irix5.3 file renamed to irix5.x and the irix64 file was renamed to irix6.x. The freebsd file was changed to point to linux-gnulibc1. These changes were tested on: Linux 2.0 Linux 2.1 FreeBSD 3.2 Irix 5.3 Irix64 6.2 Irix64 6.4 HP/UX 10.20 OSF1 4.0 ./config/alphaev56-dec-osf4.x ./config/irix64 Added warnings similar to linux/freebsd about using compilers with known bugs. ./config/commence.in ./config/conclude.in ./src/Makefile.in ./test/Makefile.in ./testpar/Makefile.in ./tools/Makefile.in Added definitions for shared libraries. This has been tested on the following systems: Linux 2.0 Linux 2.1 FreeBSD 3.2 Irix 5.3 Irix64 6.2 Irix64 6.4 HP/UX 10.20 static only OSF1 4.0 If you want to disable use of shared libraries (you probably do for development purposes since it takes a lot longer to compile and because you have to run dynamically linked programs in a special way if the library hasn't been installed) then add `--disable-shared' to the configure command line. This is all documented in the INSTALL file. ./bin/release Temprarily commented out the MANIFEST checking when running under svf since svf is about to be replaced by a newer version. This change only affects error checking during the release process. ./Makefile.dist ./Makefile.in Added `make check' which does the same thing as `make _test' since the former is endorsed by the GNU coding style and people are used to it. The old `make _test' still works too (and so does `make test' if you use GNU make).
* [svn-r1071] Moved the MPI test to a file of its own (t_mpi.c) for future ↵Albert Cheng1999-02-175-257/+258
| | | | | | | | | addition of other MPI tests. Changed return code tests from comparing with FAIL to with 0. Updated MANIFEST for the addition of a new file. Tested in O2k.
* [svn-r1068] Completed the previous to do auto-configure for parallel tests too.Albert Cheng1999-02-151-7/+6
| | | | | | Also removed the pre-defined "USE_PAUSE" since it should be invoked only in individual cases, rather than as defaults. Tested in O2K.
* [svn-r1035] t_file.c:Albert Cheng1999-01-272-2/+143
| | | | | | | | | | | Added a new test to verify the MPIO can support independent overlapping writes. testphdf5.c: Bracketed the MPIO write test with a #ifdef so that it is tested only when the explicitely turned on. Platform tested: O2K.
* [svn-r1034] Changed spelling of extendable to extendible just for ↵Albert Cheng1999-01-271-8/+8
| | | | consistency sake.
* [svn-r928] Changes since 19981118Robb Matzke1998-11-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5.c ./src/H5Smpio.c ./src/H5T.c ./src/H5Tconv.c ./src/H5Tpublic.h ./src/H5detect.c ./src/H5private.h ./src/H5public.h ./test/big.c The `long long' type isn't quite as prevalent as we had hoped; there is at least one system that defines `__int64' but not `long long'. Therefore, I've temporarily changed all occurrences of `long long' to `long_long' and then #define that in H5private.h based on the existence of `long long' or `__int64'. This gets rid of some #ifdef's in other parts of the code. The semantics of the hdf5 types are: *int8_t Exactly one byte *int16_t At least two bytes. We favor 32-bit integers over 16-bit integers if the 16-bit integer is 4-bytes wide (Cray) *int32_t At least four bytes. *int64_t At least eight bytes long_long The widest integral integer type The H5Smpio.c contains debugging code which is non-portable. ./tools/h5ls.c Changed the order native types are detected so we favor the name `int' over `short' or `long' if two of them are the same. ./config/conclude.in Added a rule to make test programs depend on the hdf5 library. This fixes a minor bug where changing H5detect.c and then running `make test' caused H5Tinit.c to not be recompiled and therefore the test files are not relinked.
* [svn-r907] Changes since 19981111Robb Matzke1998-11-131-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./INSTALL Added instructions about specifying a path for GNU zlib and HDF4 headers and library. Added comments for each of the tool names. Added h5toh4 as a tool name. ./configure.in ./conigure [REGENERATED] ./src/H5config.h.in [REGENERATED] The config/* scripts get invoked with $CC_BASENAME set the base name of the compiler in order to make it easier to handle setting compiler flags for different compilers in a big case statement. For instance, if $CC has the value /usr/local/mpi/bin/mpicc -ansi -64 then $CC_BASENAME will be `mpicc'. The $CC_BASENAME is not set if $CC is not set. Fixed alignment in `configure --help'. An include and/or library path can be specified for GNU zlib if configure can't find it in normal places. The "normal" means wherever your compiler normally searches, including search paths you've added through environment variables like CPPFLAGS and LDFLAGS. The INSTALL file has instructions. The `-ljpeg' library is detected. If `ssize_t' is not found then a #define is added to H5config.h similar to what we already do for `size_t'. We detect the hdf5 header file `mfhdf.h' and libraries `-lmfhdf' and `-ldf' and if found define the H5TOH4 and TESTH5TOH4 Makefile variables. The user can specify an include and/or library path. The INSTALL file has instructions. The `RUNTEST' variable has been split into `RUNSERIAL' and `RUNPARALLEL' because these are different commands. The makefile still uses `RUNTEST', which defaults to the RUNSERIAL value. The new testpar/Makefile.in sets RUNTEST to the RUNPARALLEL value. The default RUNSERIAL value is empty and the default RUNPARALLEL value is `mpirun -np 2'. These can both be overridden in the config/* files. To make the value the empty string set it like `RUNPARALLEL=none' in the config/* file. The new testpar/Makefile is generated from testpar/Makefile.in ./config/commence.in Added the RUNSERIAL and RUNPARALLEL makefile definitions. ./src/Makefile.in The `H5detect' program is run with RUNSERIAL, which is empty on all platforms except intel-osf1 (ASCI/Red) ./config/conclude.in Removed the `.c.a:' implicit rule -- we don't use it any more. ./config/BlankForm ./config/alpha-dec ./config/alpha-dec-osf4.0 ./config/freebsd2.2.7 ./config/hpux10.20 ./config/hpux9.03 ./config/intel-osf1 ./config/irix5.3 ./config/irix6.2 ./config/irix64 ./config/linux ./config/powerpc-ibm-aix4.2.1.0 ./config/rs6000-ibm-aix4.1.4.0 ./config/solaris2.5 All of these files have been updated to hande multiple compilers. Most of them assume `cc' if CC is not set. The documentation in `BlankForm' has been updated and documentation in the other files refer to `BlankForm'. The intel-osf1 uses LDFLAGS instead of LIBS to specify the extra library search paths. ./examples/Makefile.in ./test/Makefile.in ./tools/Makefile.in Simplified by grouping some dependency information together more succinctly. The tools Makefile.in has been modified to work with the `h5toh4' and `testh5toh4' programs. Until Paul checks these in you may have problems compiling. If so, just create files h5toh4.c and testh5toh4.c that contain: #include <stdio.h> int main(int argc, char *argv[]) { fprintf(stderr, "%s: not implemented\n", argv[0]); return 1; } ./src/H5public.h Removed definition for `ssize_t' since this is now handled by configure in H5config.h with a #define. ./MANIFEST ./testpar/Makefile.in [NEW] Added a makefile for parallel tests. As soon as we get this working properly we can remove the other four makefiles in that directory and maintain just one.
* [svn-r651] Changed name: call H5Sget_simple_extent_dims instead of old ↵Robert Kim Yates1998-09-011-2/+2
| | | | H5Sextent_dims.
* [svn-r634] *** empty log message ***Albert Cheng1998-08-311-1/+1
|