summaryrefslogtreecommitdiffstats
path: root/src/H5FDfphdf5.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r8731] Purpose:Quincey Koziol2004-06-231-3/+24
| | | | | | | | | | | | | | | Code cleanup & minor optimization Description: Re-work the way interface initialization routines are specified in the library to avoid the overhead of checking for them in routines where there is no interface initialization routine. This cleans up warnings with gcc 3.4, reduces the library binary size a bit (about 2-3%) and should speedup the library's execution slightly. Platforms tested: FreeBSD 4.10 (sleipnir) w/gcc34 h5committest
* [svn-r8287] Purpose:Quincey Koziol2004-03-301-1/+1
| | | | | | | | | | | | | | Bug fix/code cleanup Description: Copy Robb's feature in SSlib that checks that the name of the function used in the FUNC_ENTER macro is actually the name of function. Fixed a bunch of typos & copy-n-pasto's for functions with incorrect names. Platforms tested: FreeBSD 4.9 (sleipnir) w/parallel too minor to require h5committest
* [svn-r8134] Purpose:Quincey Koziol2004-01-311-0/+26
| | | | | | | | | | | | | | | | Code cleanup Description: Add destructor to match constructor fr VFLs when they are shut down by the library. Solution: Added H5FD_*_term() routines to "undo" changes made in H5FD_*_init() routines. Platforms tested: IBM p690 (copper) too minor to require h5committest
* [svn-r8126] Purpose:Quincey Koziol2004-01-311-256/+90
| | | | | | | | | | | | | | | | | Bug fix/optimization Description: Address slowdown in MPI-I/O file metadata operations that was introduced mid-stream. We now _require_ a POSIX compliant parallel file system for the MPI-I/O file driver (as well as for the MPI-POSIX file driver). Also optimized file open operation when the file is being created by reducing the number of collective & syncronizing calls. Additionally, refactor the MPI routines into a common place, eliminating duplicated code. Platforms tested: FreeBSD 4.9 (sleipnir) w/parallel h5committest
* [svn-r8038] Purpose:Quincey Koziol2004-01-081-2/+2
| | | | | | | | | | | | | | | | | | | | Bug fix Description: When two property lists are compared, the H5Pequal routine was just comparing the raw information for the property values. This causes problems when the raw information contains pointers to other information. Solution: Allow a 'compare' callback to be registered for properties, so that a user application get perform the comparison itself, allowing for "deep" compares of the property value. This was exported to the H5Pregister & H5Pinsert routines in the development branch, but not the release branch. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7993] Purpose:Quincey Koziol2003-12-291-57/+68
| | | | | | | | | | | | Code cleanup, bug fixes Description: Wrap up rest of changes necessary for fixing the "short" MPI-I/O read problem that Robb reported. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7917] Purpose:Quincey Koziol2003-12-061-2/+2
| | | | | | | | | | | | | | | | | | | Code cleanup Description: Clean up compiler warnings, especially the 'FUNC' variable not used which comes out in production mode. Solution: Had to add a new FUNC_ENTER_NOAPI_NOINIT_NOFUNC macro for those non-API functions which don't need the 'FUNC' variable defined. (This will be _so_ much easier when C99 is standard on all our supposed platforms, since it has a __FUNC__ macro... ) Platforms tested: FreeBSD 4.9 (sleipnir) too minor for h5committest (although there were lots of files changed, the change was minor in each one)
* [svn-r7838] Purpose:Bill Wendling2003-11-121-19/+26
| | | | | | | | | | | | | | | | | | | | | | | Bug fix and File Addition Description: - Fixed when reading from the file with FPHDF5. It wasn't recording how many bytes it read. - Added Arithmetic Transformation modules. These haven't been included into the HDF5 build. I just added them here for future porposes... Solution: Added a call to "MPI_Get_count" to get the number of bytes read. Platforms tested: Linux (w/ FPHDF5) AIX (w/ and w/o FPHDF5) FPHDF5-specific fixes...No need for H5committest Misc. update:
* [svn-r7805] Purpose:Bill Wendling2003-10-311-5/+18
| | | | | | | | | | | | | | | | | | | | Bug Fix Description: The End of Address information needed to be kept by the SAP. Some processes were trying to get the EOA information in collective mode, but the action wasn't collective at the time. Solution: Keep the EOA information for the file on the SAP. Clients query the SAP to get/set it when needed. Platforms tested: Linux (w/ FPHDF5) Copper (w/o FPHDF5) (FPHDF5 specific, so no need for full testing) Misc. update:
* [svn-r7789] Purpose:Quincey Koziol2003-10-291-89/+56
| | | | | | | | | | | | | | | Bug fix & code cleanups Description: Change our use of MPI derived datatypes to not create datatypes with "0-sized" lengths, which causes the LANL Q machine to hang. Also, get rid of "prefer MPI derived datatypes" environment variable since it has no advantage. Platforms tested: FreeBSD 4.9 (sleipnir) w & w/o parallel h5committest
* [svn-r7767] Purpose:Quincey Koziol2003-10-281-15/+13
| | | | | | | | | | | | | Code cleanup Description: Untwist the last few sections of code before starting on fixing the problems with reading off the end of the file in earnest. Platforms tested: FreeBSD 4.9 (sleipnir) FreeBSD 4.9 (sleipnir) w/parallel h5committest not necessary - parallel only changes
* [svn-r7765] Purpose:Quincey Koziol2003-10-281-85/+76
| | | | | | | | | | | | | Code cleanup Description: More collective/independent cleanups to straighten out code contortions. Platforms tested: FreeBSD 4.9 (sleipnir) FreeBSD 4.9 (sleipnir) w/parallel Linux 2.4 (verbena) w/fortran & C++ Solaris 2.7 (arabica) w/64-bit extensions enabled
* [svn-r7754] Purpose:Quincey Koziol2003-10-271-23/+25
| | | | | | | | | | | | | Code cleanup Description: Straighten out more goofiness in the MPI code dealing with collective I/O transfers - mostly make certain that a view is set if-and-only-if collective I/O is occurring on raw data (and vice versa for views and independent I/O) Platforms tested: FreeBSD 4.9 (sleipnir) w/parallel & FPHDF5 too minor to repquire h5committest
* [svn-r7498] Purpose:Quincey Koziol2003-09-191-34/+9
| | | | | | | | | | | Code cleanup Description: Clean up various warnings and parameter mis-matches, etc. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to need h5committest
* [svn-r7489] Purpose:Bill Wendling2003-09-181-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update Description: A lot of modifications for the FPHDF5 stuff: H5AC.c H5ACprivate.h - Removed AC_find (it's replaced with AC_protect and AC_unprotect). Added flushing if it's an FPHDF5 driver and we're doing an AC_set or AC_unprotect with the dirty flag set. H5B.c - Split up the B_flush function into different functions since the one function was doing serialization which is better left as a separate entity. H5D.c - Removed some FPHDF5 code that was incorrect H5F.c - Split up the F_flush function so that it no longer allocates file space. Created new functions (F_init_superblock, F_read_superblock, and F_write_superblock) for greater modularity and so that the FPHDF5 non-captain processes can read the superblock after the captain process writes it. H5FD.c - Error message correction. H5FDfphdf5.c - Removed MPI barrier call that wasn't needed. H5FPclient.c H5FPserver.c - Modified so that if a process requests data that isn't exactly aligned, we can return it if we have the block that contains the requested address. H5G.c H5Gent.c H5Gnode.c H5HL.c H5HLpkg.h H5HLprivate.h H5Oefl.c - Removed the H5HL_peek function since it was doing a (now unsafe) holding of the information in the cache. Replaced with protect and unprotect calls. H5TB.c - Error fix. The TB_dless function wasn't working properly. H5Gstab.c - Format change. H5err.txt H5Edefin.h H5Einit.h H5Epubgen.h H5Eterm.h - Added new error code. Platforms tested: Modi4 (paralle, Fortran) Sol (Fortran) Linux (C++, Fortran) Copper (Parallel, Fortran) Misc. update:
* [svn-r7387] Purpose:Quincey Koziol2003-08-211-153/+147
| | | | | | | | | | | Code cleanup Description: More de-linting Platforms tested: FreeBSD 4.8 (sleipnir) too small to need h5committest
* [svn-r7374] Purpose:Quincey Koziol2003-08-151-0/+1
| | | | | | | | | | | | | Added comment. Description: Call to MPI_Barrier should be unneccessary. Platforms tested: FreeBSD 4.8 (sleipnir) too minor for h5committest Misc. update:
* [svn-r7367] Purpose:Bill Wendling2003-08-151-106/+31
| | | | | | | | | | | | | | | | | | | Update Description: Added an extra flag to the clear functions that triggers a "destroy" of the object being cleared if necessary. This is a fix for the FPHDF5 stuff which had an object sticking around after it was cleared. (In FPHDF5, some processes are in charge of destroying the object, but all processes might actually allocate the object.) Platforms tested: AIX (Copper: Fortran & C++) Linux (Verbena: Fortran & C++) IRIX (Modi4: Parallel & Fortran) (Sol is down) Misc. update:
* [svn-r6527] Purpose:Bill Wendling2003-03-271-45/+12
| | | | | | | | | | | | | | | | | | | | | | | Bug Fix & Update Description: FPHDF5 was creating files which didn't have the EOA field in the superblock set correctly. It turns out that the SAP was keeping this information to itself instead of giving it to the client processes. Naughty SAP! Solution: Have the SAP send this information back to the clients so that they can update the superblock as necessary. This now creates a file (with just the root group) that looks correct! Only problem is that there's extra file space being allocated. Also, at program termination, there's an infinite loop... Platforms tested: H5committests (run by hand on burrwhite, arabica, and modi4) Misc. update:
* [svn-r6514] Purpose:Bill Wendling2003-03-201-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Bug fix and Update Description: From Quincey's comments on the code I checked in last night: - In H5F_close call, the "private" processes should call the H5F_flush with the "CLEAR_ONLY" flag. - There's no need for a special case for FPHDF5 in the FD_real_alloc function since FPHDF5 doesn't define an alloc function. - The return type of H5Pset_fapl_fphdf5 should be herr_t instead of hid_t. I don't know how it got that way in the first place. - The variable names for MPI types and the structure typedefs should be switched: H5FP_request/H5FP_request_t to H5FP_request_t/H5FP_request and so on. - In the H5FP.c module, I was commiting the H5FP_request MPI datatype but using the wrong offset field... Platforms tested: Linux...will test on others, but these are mostly FPHDF5 changes. Misc. update:
* [svn-r6502] Purpose:Bill Wendling2003-03-191-58/+119
| | | | | | | | | | | | | | | | | | | Update Description: More changes to the FPHDF5 file driver. Too many to mention here. Some highlights: - Addition of lock/unlock methods to the driver, though they aren't implemented fully just yet. - Extra query functions to determine various things about the file. (If this is the captain process, etc) - Fixes to make things work... Platforms tested: Linux Misc. update:
* [svn-r6428] Purpose:Bill Wendling2003-02-221-0/+1
| | | | | | | | | | Bug Fix Description: Private header file was included in a public header file by mistake. Solution: Put the private header file into the .c module instead. Platforms tested: Linux 2.4 (see, I really did test it).
* [svn-r6424] Purpose:Bill Wendling2003-02-211-8/+112
| | | | | | | | Update Description: Added support for allocating and freeing space in the file. Platforms tested: Linux & Modi4
* [svn-r6406] Purpose:Bill Wendling2003-02-141-113/+68
| | | | | | | | | | | | Update Description: Since metadata doesn't use a "set view" to do I/O, I moved the check for the use_set_view variable down into the "real" write routine. Also added a check for when the server is dumping metadata to the file. in that case, don't write this information to the SAP... Platforms tested: Linux
* [svn-r6402] Purpose:Bill Wendling2003-02-121-390/+228
| | | | | | | | | | | | | | | Update Description: Added the flush function. Modified so that it calls the FPHDF5 code for reading and writing. This involved splitting the write function up into three different parts to avoid lame goto's. There's some code which will copy a data xfer property list and add in there that we're "dumping" the data so that we can recall this layer when the SAP dumps metadata to a process... Platforms tested: Linux
* [svn-r6398] Purpose:Quincey Koziol2003-02-121-1/+1
| | | | | | | | | | Code cleanup Description: Clean up some compiler warnings Platforms tested: FreeBSD 4.7 (sleipnir)
* [svn-r6392] Purpose:Bill Wendling2003-02-101-564/+837
| | | | | | | | | | | | | | | | | | | | | | | | Update Description: Folded in Quincey's changes to the caching stuff. (Stole the code from the H5FDmpio driver). Roughed in some code for doing a read from the SAP. Also roughed in code for doing a write. However, the write requires an OID, which I'm not sure how to pass down into the driver (maybe via the dxpl_id?...but then it has always to be set before calling one of these routines...). Removed some of the global variables which were there because of the FPHDF5 stuff... Removed the H5Ofphdf5.* stuff from the Makefile.in, since I'm pretty sure it's going away and I don't want to waste time updating that module if that's the case...so just don't compile it. Platforms tested: Linux
* [svn-r6379] Purpose:Bill Wendling2003-02-061-0/+1589
Update Description: H5FP.c, H5FPclient.c, H5FPprivate.h, H5FPserver.c: Update. More progression towards the SAP as metadata cache. It only lacks the ability to take care of metadata allocations. H5FDfphdf5.[ch]: Start of a new driver for FPHDF5. Not fully implemented just yet... Platforms tested: Linux