Commit Graph

107 Commits

Author SHA1 Message Date
Quincey Koziol
5f2b8eee13 [svn-r5560] Purpose:
Bug Fix for bug #789

Description:
    Creating a 1-D dataset region reference caused the library to hang (go into
    an infinite loop).

Solution:
    Corrected algorithm for serializing hyperslab regions.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-06-10 10:19:19 -05:00
Quincey Koziol
6b1208407f [svn-r5536] Purpose:
New feature.

Description:
    Added a "small data" block allocation mechanism to the library, similar to
    the mechanism used for allocating metadata currently.

    See the RFC for more details:
        http://hdf.ncsa.uiuc.edu/RFC/SmallData/SmallData.html

    This reduces the number of I/O operations which hit the disk for my test
    program from 19 to 15 (i.e. from 393 to 15, overall).

Platforms tested:
    Solaris 2.7 (arabica) w/FORTRAN and FreeBSD 4.5 (sleipnir) w/C++
2002-06-05 10:23:20 -05:00
Albert Cheng
c72c322f62 [svn-r5534] Purpose:
Updated the instructions for tflops and O2K.
Platforms tested:
    eye balled.
2002-06-04 17:49:24 -05:00
Elena Pourmal
a7f08bc1bb [svn-r5524]
Purpose:
    Bug fix (#699), fix provided by a user, approved by Quincey
Description:
    When a scalar dataspace was written to the file and then
    subsequently queried with the H5Sget_simple_extent_type function,
    type was reported H5S_SIMPLE instead of H5S_SCALAR.
Solution:
    Applied a fix (see bug report 699)
Platforms tested:
    Solaris 2.7 and Linux 2.2.18
2002-06-04 11:22:19 -05:00
Quincey Koziol
ba26e8f2ad [svn-r5521] Purpose:
Code improvement

Description:
    The metadata aggregation code in the library was not terribly smart about
    extending contiguous regions of metadata in the file and would not extend
    them as far as possible.  This causes space in the file to be wasted, also.

Solution:
    Be smarter about extending the space used in the file for metadata by
    checking whether new metadata blocks allocated in the file are at the end
    of the current metadata aggregation region and append them to the metadata
    region if so.  This has the nice side benefit of reducing the number of
    bytes we waste in the file and reducing the size of the file by a small
    amount in some cases.

    This reduces the number of I/O operations which hit the disk for my test
    program from 53 to 19 (i.e. from 393 to 19, overall).

Platforms tested:
    Solaris 2.7 (arabica) w/FORTRAN and FreeBSD 4.5 (sleipnir) w/C++
2002-06-04 08:37:51 -05:00
Quincey Koziol
8ae371469a [svn-r5519] Purpose:
Bug Fix

Description:
    The "dirty" flag for symbol table entries and symbol table nodes was not
    being cleared when they were flushed to the file, causing lots of extra
    metadata I/O.

Solution:
    Reset the symbol table entry & nodes' flags when thy are flushed to disk.

    This reduces the number of I/O operations which hit the disk for my test
    program from 83 to 53 (i.e. from 393 to 53, overall).

Platforms tested:
    Solaris 2.7 (arabica) w/FORTRAN & FreeBSD 4.5 (sleipnir) w/C++
2002-06-03 21:20:07 -05:00
Quincey Koziol
d74e0290ba [svn-r5510] Purpose:
Code cleanup/bug fix

Description:
    The "metadata accumulator" cache in the library (which is designed to catch
    small metadata writes/reads and bundle them together into larger I/O
    buffers) was incorrectly detecting the important case of metadata pieces
    being written sequentially to the file, adjoining but not overlapping.

    Additionally, the metadata accumulator was not being used to cache data
    read in from disk, only caching writes.

Solution:
    Fix accumulator to correctly cache adjoining metadata writes and also to
    cache metadata read from disk.

    Between these two fixes, the number of I/O requests which resulted in actual
    reads/writes to the filesystem dropped from 393 requests to 82 for the
    particular test I was using. :-)

Platforms tested:
    Solaris 2.7 (arabica) w/FORTRAN & FreeBSD 4.5 (sleipnir) w/C++
2002-06-03 14:11:43 -05:00
HDF Admin
ce3122b69a [svn-r5506] Snapshot version 1.5 release 29 2002-06-01 23:11:23 -05:00
Quincey Koziol
3d8696ae55 [svn-r5500] Purpose:
Document Bug Fix

Description:
    Under certain [obscure] circumstances, an object header would get paged out
    of the metadata cache, and when it was accessed again and brought back into
    the cache, and immediately had additional metadata added to it (an
    attribute, usually, or perhaps adding an object to a group), and needed to
    be extended with a continuation message, but there was no room in any
    existing object header chunks for the continuation message and an existing
    object header message needed to be moved to the new object header chunk (I
    told you it was obscure :-), the object header message moved to the new
    chunk (not the new metadata being added) would get corrupted. *whew* :-)

Solution:
    Actually copy the "raw" object header message information of the object
    header message being moved to the new chunk, instead of relying on the
    "native" object header message information being re-encoded when the object
    header is flushed.  This is because when an object header is paged out of
    the metadata cache and subsequently brought back in, the "native"
    information pointer in memory is reset to NULL and only the "raw"
    information exists.

Platforms tested:
    Solaris 2.7 (arabica) & FreeBSD 4.5 (sleipnir)
2002-05-31 22:09:59 -05:00
HDF Admin
5daeaa62da [svn-r5465] Snapshot version 1.5 release 28 2002-05-28 09:08:35 -05:00
MuQun Yang
6f64a5d838 [svn-r5453]
Purpose:
    update, remove hdf4-related stuff.
Description:
   hdf4 related tools have been moved out of HDF5 CVS tree, The install doc should reflect this.
Solution:
Platforms tested:
2002-05-22 16:48:50 -05:00
Quincey Koziol
8a3bbed8bf [svn-r5442] Purpose:
Document VFL "flush" changes.
2002-05-20 12:08:13 -05:00
Quincey Koziol
064d89ddae [svn-r5435] Purpose:
Document Code improvement below:

Description:
    Propagated the "fill time" property into the parallel chunk allocation
    routine, allowing it to avoid writing fill values to each new chunk
    allocated.  This improves the performance of chunked datasets in parallel
    I/O to be on par with contiguous datasets again (on modi4).
2002-05-17 09:03:23 -05:00
Quincey Koziol
e02ae065f6 [svn-r5430] Purpose:
Document Bug fix/Code improvement below:

Description:
    Currently, the chunk data allocation routine invoked to allocate space for
    the entire dataset is inefficient.  It writes out each chunk in the dataset,
    whether it is already allocated or not.  Additionally, this happens not
    only when it is created, but also anytime it is opened for writing, or the
    dataset is extended.  Worse, there's too much parallel I/O syncronization,
    which slows things down even more.

Solution:
    Only attempt to write out chunks that don't already exist.  Additionally,
    share the I/O writing between all the nodes, instead of writing everything
    with process 0.  Then, only block with MPI_Barrier if chunks were actually
    created.
2002-05-17 07:54:42 -05:00
Quincey Koziol
da155dfd4b [svn-r5415] Purpose:
Document Bug Fix
2002-05-14 13:06:18 -05:00
Quincey Koziol
f2d3f450ba [svn-r5409] Purpose:
Document Performance enhancement
2002-05-13 15:22:25 -05:00
Quincey Koziol
f2fbab6664 [svn-r5404] Purpose:
Back out change

Description:
    Back out description of VFL 'flush' change.
2002-05-13 12:55:40 -05:00
Bill Wendling
0cf1b5cee2 [svn-r5395] Purpose:
Update
Description:
    Added documentation on how you can install in a different directory
    than the one you specified during configuration.
2002-05-10 15:54:20 -05:00
Quincey Koziol
d4b398e542 [svn-r5394] Purpose:
Document new VFL flush parameter.
2002-05-10 13:39:32 -05:00
Quincey Koziol
dabf675481 [svn-r5389] Purpose:
Update release notes about rotating metadata writes.
2002-05-10 10:43:57 -05:00
Bill Wendling
c43feb3092 [svn-r5383] Purpose:
Update
Description:
    Updated how to compile HDF5 with Intel compilers (ecc or icc).
2002-05-09 11:55:04 -05:00
Elena Pourmal
3f7fdf13fe [svn-r5364]
Purpose:
    Maintenance
Description:
    Added information about Parallel Fortran Support for HP-UX 11.00 SysV
    and write/read overloaded subroutines (bug #670)
2002-05-06 13:22:50 -05:00
Quincey Koziol
a88d81f4ba [svn-r5286] Purpose:
Bug Fix

Description:
    Selection offsets were not being used correctly when iterating through
    all hyperslabs selections and point selections.

Solution:
    Use the selection offset appropriately.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-29 15:27:31 -05:00
HDF Admin
eb09629a45 [svn-r5275] Snapshot version 1.5 release 27 2002-04-27 04:30:52 -05:00
Raymond Lu
94f11385a6 [svn-r5273]
Purpose:
    New feature
Description:
    Allow H5Glink and H5Gmove to handle links across different locations.
Solution:
    Added H5Glink2 and H5Gmove2 functions with new parameter of destination
    location.
Platforms tested:
    Linux 2.2(eirene)
2002-04-26 15:34:46 -05:00
Albert Cheng
95d86b38c5 [svn-r5237] Purpose:
Updated the installation instruction for the Tflops machine.
    Moved the parallel HDF5 building instructions to the front
    and putting in a NOTE that the sequential version is not supported
    any more because it has little practical value to build sequential
    applications for the Tflops machine.
2002-04-23 16:54:57 -05:00
Albert Cheng
ac917c1f07 [svn-r5229] Updated with support for parallel C API. 2002-04-22 20:25:14 -05:00
Albert Cheng
7b022bbfb8 [svn-r5224] Purpose:
Update
Description:
    Added the support platform summary paragraph.
    Thread safe is supported for solaris 2.8_32bit.
Platforms tested:
    hdfsun8
2002-04-22 15:30:58 -05:00
HDF Admin
81912c99e7 [svn-r5213] Snapshot version 1.5 release 26 2002-04-20 04:43:19 -05:00
HDF Admin
139af5a517 [svn-r5199] Snapshot version 1.5 release 25 2002-04-18 08:54:09 -05:00
Albert Cheng
67d22cb484 [svn-r5193] Purpose:
Maintenance
Description:
    The tflops option local modification in bin/config.sub was wiped out
    during the latest autoconfigure tools upgrade.  Instead of adding it
    in for every autoconfigure tools upgrade, I changed the instruction
    to use a standard feature in configure.
	./configure --host=i386-intel-osf1
    This is a bit more typing but no more local modification.
2002-04-17 12:27:29 -05:00
Quincey Koziol
fa314a767e [svn-r5191] Purpose:
Bug fix

Description:
    When several level deep nested compound & VL datatypes are used, the data
    in the nested compound datatypes is incorrectly sharing the same "background
    buffer", causing data corruption when the data is written to the file.

Solution:
    Allocate a separate background buffer for each level of the nested types
    to convert.  (Also allocate temporary background buffers for array
    datatypes, where this sort of problem could occur also)

    Added more regression tests to check for these errors.

Platforms tested:
    FreeBSD 4.5 (sleipnir) & Solaris 2.6 (baldric)
2002-04-17 11:47:47 -05:00
Albert Cheng
dee325eb6c [svn-r5188] Updated instruction how to configure the TFLOPS machine. 2002-04-16 17:50:39 -05:00
Pedro Vicente Nunes
3235664158 [svn-r5176]
Purpose:
    added description of H5Dset_extent
2002-04-12 11:10:29 -05:00
Raymond Lu
ce920c6c04 [svn-r5170]
Purpose:
    New feature
Description:
    Fill-value's behaviors for contiguous dataset have been redefined.
    Basicly, dataset won't allocate space until it's necessary.  Full details
    are available at http://hdf.ncsa.uiuc.edu/RFC/Fill_Value, at this moment.
Platforms tested:
    Linux 2.2.
2002-04-11 17:52:48 -05:00
Quincey Koziol
1ffe083f61 [svn-r5152] Purpose:
New Feature

Description:
    Added new H5Dfill() routine to fill the elements in a selection for a
    memory buffer with a fill value.  This is a user API wrapper around some
    internal routines which were needed for the fill-value modifications
    from Raymond as well as Pedro's code for reducing the size of a chunked
    dataset.

Platforms tested:
    FreeBSD 4.5 (sleipnir) [and IRIX64 6.5 (modi4) in parallel, in a few
    minutes]
2002-04-09 07:47:34 -05:00
HDF Admin
8a086b1643 [svn-r5148] Snapshot version 1.5 release 24 2002-04-06 11:36:23 -05:00
Raymond Lu
242d36d263 [svn-r5147]
Purpose:
    New feature
Description:
    Added a query function H5Tget_member_index for compound and enumeration
    data types, to retrieve member's index by its name.
Platforms tested:
    Linux 2.2
2002-04-05 17:31:20 -05:00
Quincey Koziol
7ae00db7a4 [svn-r5138] Purpose:
Bug Fix & Code Cleanup

Description:
    The MPI-IO optimized transfer routines
    (H5S_mpio_spaces_read/H5S_mpio_space_write) are not being invoked in all
    the cases where they could be used.

    Additionally, the code for determining if an optimized transfer is wrapped
    into the actual I/O transfer routine in a very confusing way.

Solution:
    Re-enabled MPI-IO optimized transfer routines in all the cases where they
    should work.

    Extracted all the pre-conditions for optimized transfers into separate
    routines from the transfer routines.

Platforms tested:
    FreeBSD 4.5 (sleipnir) & IRIX64 6.5 (modi4)
2002-04-03 12:07:14 -05:00
Quincey Koziol
d2232a345f [svn-r5130] Purpose:
Bug Fix & Feature

Description:
    The selection offset was being ignored for optimized hyperslab selection
    I/O operations.

    Additionally, I've found that the restrictions on optimized selection
    I/O operations were too strict and found a way to allow more hyperslabs
    to use the optimized I/O routines.

Solution:
    Incorporate the selection offset into the selection location when performing
    optimized I/O operations.

    Allow optimized I/O on any single hyperslab selection and also allow
    hyperslab operations on chunked datasets.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-02 15:51:41 -05:00
Albert Cheng
c1e44699f0 [svn-r5128] Updated. 2002-04-02 10:34:44 -05:00
Raymond Lu
a2ea33e6b9 [svn-r5124]
Purpose:
    Bug fix(#697)
Description:
    Variable-length string is not treated as string.
Solution:
    Added character set and padding as VL string's attributes.  They can be
    set and retrieved.
Platforms tested:
    Solaris 8, IRIX64 6.5 parallel, and FreeBSD.
2002-04-01 09:01:49 -05:00
Bill Wendling
fbd4e4cb5e [svn-r5118] Purpose:
Doc Change
Description:
	Documented the fix for the 1024 byte object name limitation...
2002-03-29 13:38:28 -05:00
Quincey Koziol
ecbdbe3521 [svn-r5099] Purpose:
Update release notes
Description:
    Document H5Gget_objinfo() bug fix (fixes bug #732)
2002-03-27 15:29:35 -05:00
Quincey Koziol
ff35b69790 [svn-r5085] Purpose:
Update release notes.
2002-03-26 14:56:25 -05:00
HDF Admin
27f0b5a267 [svn-r5078] Snapshot version 1.5 release 23 2002-03-23 04:14:47 -05:00
MuQun Yang
cd0af12f66 [svn-r5075] Snapshot version 1.5 release 22 2002-03-21 08:49:57 -05:00
HDF Admin
30d5329208 [svn-r5019] Snapshot version 1.5 release 21 2002-02-27 14:43:34 -05:00
Binh-Minh Ribler
29581b5137 [svn-r5012] Purpose:
Windows support
Description:
    Added the install file to 1.5 specifically for C++ API on Windows.
2002-02-26 10:02:32 -05:00
Quincey Koziol
5883b9d67d [svn-r4965] Purpose:
Bug Fix
Description:
    If a non-zero fill-value is used for a chunked dataset, any non-existent
    chunked read with an "all" selection (or a contiguous hyperslab selection)
    will return zero for those instead of the user's fill-value.
Solution:
    Fixed I/O code to pass down fill-value to "optimized" I/O routines, so it
    will be available to fill the user's buffer with.
Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-02-14 10:57:48 -05:00