Commit Graph

3978 Commits

Author SHA1 Message Date
Quincey Koziol
f2d3f450ba [svn-r5409] Purpose:
Document Performance enhancement
2002-05-13 15:22:25 -05:00
Quincey Koziol
c5a9d502a3 [svn-r5408] Purpose:
Performance enhancement

Description:
    Doing an MPI_File_sync() just before a file is closed causing a large
    performance loss.

Solution:
    Add flag to MPI file driver to avoid performance the MPI_File_sync() when
    the flag is set before a call to H5F_flush().

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-13 15:21:59 -05:00
Albert Cheng
d07e0dd9a3 [svn-r5407] Purpose:
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.
2002-05-13 14:55:33 -05:00
Quincey Koziol
4793f81ae1 [svn-r5406] Purpose:
Code cleanup

Description:
    Restructure H5F_close code to use just one H5F_flush call.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-13 14:40:51 -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
Quincey Koziol
14b00edf0a [svn-r5403] Purpose:
Back out changes.

Description:
    Back out changes to VFL 'flush' API function, pending review.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-13 12:48:07 -05:00
Elena Pourmal
dbcce6d77f [svn-r5401]
Purpose:
    Code clean-up
Description:
    Removed unused HAVE_XXXX macros from the H5f90i.h file.
Platforms tested:
    HP-UX 11.00 (kelgia) and IRIX64-6.5 (modi4)
2002-05-13 11:15:50 -05:00
Quincey Koziol
9ed006d12f [svn-r5399] Purpose:
Bug Fix

Description:
    Missed adding the 'closing' parameter to one 'flush' function.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-05-11 12:06:20 -05:00
Bill Wendling
6cb7accfeb [svn-r5397] Purpose:
Bug Fix
Description:
    Put quotes around some variables so that the shell script doesn't
    complain to us about "too many arguements" for a test.
Platforms tested:
    Linux
2002-05-10 16:06:29 -05:00
Bill Wendling
8e13c3a260 [svn-r5396] Purpose:
Bug Fix
Description:
    Placed quotes around strings which could be empty so that the shell
    script doesn't complain to us about "too many arguments for test"
    problems.
Platforms tested:
    Linux
2002-05-10 16:05:06 -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
084b35362b [svn-r5393] Purpose:
New Feature

Description:
    The VFL flush function is called immediately before a file is closed.
    This can cause duplicate syncronization actions to occur, if the VFL
    close function also performs them.

Solution:
    Added 'closing' parameter to VFL 'flush' operation.  This allows the VFL
    flush function to bypass operations that will be duplicated within the VFL
    close function.

    Additionally, use the 'closing' parameter to bypass calls to MPI_File_sync()
    when set.  Since MPI_File_close() also syncronizes the file, this avoids
    the terrible performance hit taken when calling MPI_File_sync() as the file
    is closing.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-10 13:38:10 -05:00
Quincey Koziol
9815305745 [svn-r5390] Purpose:
Code cleanup

Description:
    The parallel I/O file driver is optimized to only write metadata with one
    process (and broadcast the results to the other processes).  This is
    currently enabled by a separate call to H5FD_mpio_tas_allsame() before
    each metadata write to the file.  This can easily lead to problems where
    the prelude function call is omitted before the actual write code or, in
    a threaded environment, lead to race condititions where the value set is
    reset before being used.

Solution:
    Since we only want to write metadata from one process, key off of the 'type'
    parameter (which has information about whether the data being written it
    metadata or raw data) to H5FD_mpio_write() as the method for determining
    whether to only write from one process or not.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-10 12:11:06 -05:00
Quincey Koziol
dabf675481 [svn-r5389] Purpose:
Update release notes about rotating metadata writes.
2002-05-10 10:43:57 -05:00
Quincey Koziol
1696277a6c [svn-r5386] Purpose:
Bug Fix

Description:
    Currently, only process 0 is writing attribute data to a file.  This is
    incorrect, because the raw data for attributes is cached in memory until
    the object header is written and other processes are not able to read the
    correct attribute information.

Solution:
    Have all processes participate in writing the attribute data.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-10 10:39:44 -05:00
Quincey Koziol
fcdc05f307 [svn-r5385] Purpose:
New Feature

Description:
    Currently, only process 0 writes metadata to disk, leading to a potential
    performance bottleneck as the other processors wait for it to catch up.

Solution:
    Rotate the metadata responsibilities among all processes, speading out the
    work.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-10 10:37:48 -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
Quincey Koziol
69cf1dd230 [svn-r5381] Purpose:
Small code cleanup/improvement

Description:
    Query the MPI rank only once and store it in the file structure for each
    process.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-09 07:53:29 -05:00
Frank Baker
6ae92fc622 [svn-r5378]
Purpose:
    Update h5dread/write_f parameters
Description:
    fortran/h5d_FORTRAN.html
        h5dread/write_f -- in the 'reference' versions, which yesterday's
        revisions missed):
            Added new overloading to dims parameter description.
            Corrected prior dims type and noted that it is deprecated and
            will be removed in 1.6.
    fortran/h5a_FORTRAN.html
        Updated "Last modified" tag to reflect yesterday's revisions.
Platforms tested:
    IE 5
2002-05-07 17:13:53 -05:00
Albert Cheng
3a9882a2e5 [svn-r5376] Description:
Added the calculation and printing (when debug >=3) of the
    MPI_write/read statistics.
Platforms tested:
    modi4
2002-05-07 12:34:59 -05:00
Albert Cheng
c038daacec [svn-r5375] Purpose:
Changed all API to use MPI_WTIME timer.  Just to be consistent.
Platforms tested:
    modi4
2002-05-07 12:33:56 -05:00
Bill Wendling
f04b756f6f [svn-r5374] Purpose:
Name Change
Description:
    Changed the macro's name from "MILLISECOND" to "MICROSECOND" since,
    as Quincey pointed out, that's what it is ;).
Platforms tested:
    Linux
2002-05-07 11:56:34 -05:00
Albert Cheng
fc49f1463c [svn-r5373] Purpose:
Bug fix
Description:
    The system timer forgot to add previous cummulated time.
    Fixed.
Platforms tested:
    modi4
2002-05-07 11:43:32 -05:00
Frank Baker
b414cc16ac [svn-r5371]
Purpose:
    Bugfix -- Closes #702
Description:
    Commented out references to and descriptions of unimplemented
    H5S functions.  Particularly in the UG document, Dataspaces.html.
      H5Sopen            H5Slock            H5Ssubspace
      H5Scommit          H5Sselect_op       H5Ssubspace_name
      H5Sis_subspace     H5Sselect_order    H5Ssubspace_location
    Added explanatory "Note to developers" in comments near top of
    Dataspaces.html.
Platforms tested:
    IE 5
2002-05-07 11:12:40 -05:00
Quincey Koziol
470663aef6 [svn-r5369] Purpose:
Code cleanup

Description:
    Remove incorrect MPI_Barrier() call in data I/O loop.

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-07 11:06:58 -05:00
Albert Cheng
3984d62ca3 [svn-r5368] Purpose:
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
2002-05-07 10:22:31 -05:00
Bill Wendling
74861bfaeb [svn-r5367] Purpose:
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
2002-05-06 18:58:57 -05:00
Frank Baker
a82e8892c4 [svn-r5366]
Purpose:
    Update description of h5dread/write_f and h5aread/write_f dims parameter.
Description:
    h5dread/write_f, h5aread/write_f
        Added new overloading to dims parameter description.
        Noted that prior dims type is deprecated and will be removed in 1.6.
Platforms tested:
    IE 5
2002-05-06 15:07:55 -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
MuQun Yang
aa305b466b [svn-r5358]
Purpose:
bug fix
Description:
In H5TB.c, previously use an unsigned variable to represent address difference that is maybe a negative value.
This will cause a potential bug in the future when this section of code is run.
Solution:
use H5F_address_cmp macro to compare two addresses.
Platforms tested:
linux 2.2.18
2002-05-06 11:03:55 -05:00
Bill Wendling
2cf0e9f882 [svn-r5348] Purpose:
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
2002-05-03 16:09:52 -05:00
Frank Baker
2997ad4c45 [svn-r5343]
Purpose:
    Bugfixes -- Fixes #657.
                Addresses #720 (but does not complete it).
Description:
    H5Pset_fapl_split:  Added note re checking on use of this driver,
        i.e., that H5Pget_driver returns H5FD_MULTI.
        Fixes Bug #657.
    Minor copy edits, including some addressed in Bug #720.
Platforms tested:
    IE 5
2002-05-02 16:46:52 -05:00
Albert Cheng
3b36f55715 [svn-r5342] Description:
Removed unused code that is related to inline issue.
    hdf5 C source now uses H5_inline for the non-standard
    inline feature.  No need to undefine/redefine the symbol
    inline itself.
Platforms tested:
    eirene.
2002-05-02 16:44:46 -05:00
Frank Baker
09855e5628 [svn-r5338]
Purpose:
    Elaboration on a struct field
Description:
    H5Gget_objinfo: Added caveats regarding 'fileno' field in
        H5G_stat_t struct.
Platforms tested:
    IE 5
2002-05-02 16:39:19 -05:00
Frank Baker
ce9b565b18 [svn-r5337]
Purpose:
    New function
Description:
    Added new H5Dfill function (development branch only)
Platforms tested:
    IE 5
2002-05-02 16:28:30 -05:00
Frank Baker
c1e8f35776 [svn-r5336]
Purpose:
    Bugfix -- Fixes #756.
Description:
    Section IV.A.3 -- Corrected datatype description.
Platforms tested:
    IE 5
2002-05-02 16:25:52 -05:00
Bill Wendling
0a648bddc7 [svn-r5334] Purpose:
Port
Description:
    Brought forward the changes (timing debug prints) from the 1.4
    branch.
Platforms tested:
    Linux
2002-05-02 16:19:19 -05:00
Frank Baker
e8f1f956a2 [svn-r5329]
Purpose:
    Bugfix -- Fixes #757.
Description:
    h5t{get/set}_size_f
        Corrected SIZE parameter datatype to INTEGER(SIZE_T).
Platforms tested:
    IE 5
2002-05-02 15:23:09 -05:00
Quincey Koziol
eec781a081 [svn-r5328] Purpose:
Code cleanup

Description:
    Remove an extraneous data structure for tracking the location of a
    hyperslab iterator when walking through regular hyperslab selections.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-05-02 14:20:17 -05:00
MuQun Yang
7971d2873b [svn-r5325]
Purpose:
   minor bugs fixed
Description:
    Typos in H5Fpkg.h and H5TB.c
Solution:
Platforms tested:
linux 2.2.18
2002-05-02 13:05:11 -05:00
Pedro Vicente Nunes
bcc1b57287 [svn-r5324]
Purpose:
    updated some comments regarding Code Warrior , removed other debugging comments
Platforms tested:
    w2000
2002-05-02 09:50:50 -05:00
Elena Pourmal
6e2be40f8d [svn-r5321]
Purpose:
    Bug#670 fix
Description:
    Added tests to use overloaded subroutines.
Platforms tested:
    Windows, Solaris 2.7, IRIX64-6.5
2002-05-01 19:25:38 -05:00
Elena Pourmal
9cd1488287 [svn-r5320]
Purpose:
    Bug#670 fix
Description:
    dims parameter to the h5dwrite_f, h5dread_f, h5awrite_f and h5aread_f
    subroutines was declared as INTEGER array of size 7 (max number of dimensions
    in Fortran). Users could not use the same buffer dims as an argument to
    the h5screate_simple_f subroutine since it should be an array of size = RANK
    and type INTEGER(HSIZE_T).
Solution:
    Overload subroutines with dims parameter to be assumed size array of
    INTEGER(HSIZE_T) type for backward compatibility.
    Subroutine with the INTEGER dims argument should be depricated in 1.6 release
Platforms tested:
    Windows, Solaris2.7, IRIX64-6.5
2002-05-01 19:24:19 -05:00
Frank Baker
add8f78ad5 [svn-r5319]
Purpose:
    1 new function; 3 revised functions; 2 bugfixes; copy edits
Solution:
    H5Tget_member_index: Added this new function.
    H5Tget_member_name: Revised, based on lessons learned with
        H5Tget_member_index.
    H5Tget_nmembers: Revised to indicate that function works for both
        compound and enumeration datatypes.
        --> Fixes Bug# 747.
    Cross-listed H5Tget_nmembers, H5Tget_member_index, and
        H5Tget_member_name under both compound and enum datatypes,
        as they work for both.
    H5Tset_tag: Corrected tag description (it is descriptive, uniqueness
        is not required).
    Corrected several spelling errors.
        --> Partially fixes Bug# 760 (though just for this file *sigh*).
Platforms tested:
    IE 5
2002-05-01 17:44:03 -05:00
Frank Baker
452d4c5719 [svn-r5317]
Description:
    Minor copy edits.
Platforms tested:
    IE 5
2002-05-01 17:33:50 -05:00
Frank Baker
6f3370b7b5 [svn-r5315]
Purpose:
    Bugfix -- fixes #751
Description:
    Elaborated on 'ref' parameter type.
Platforms tested:
    IE 5
2002-05-01 17:30:57 -05:00
Pedro Vicente Nunes
ce18afe663 [svn-r5313]
Purpose:
    added more tests to the H5set_extent function
Description:

 there was a bug in the H5S_select_fill call when the fill value was not defined
 added 2 more set of tests that call H5set_extent without the fill value being defined
 there are now 4 sets of tests:
 Test H5Dset_extent with chunks on the raw data cache, with and without fill value
 Test H5Dset_extent with chunks written to file (b-tree routines),  with and without fill value

Platforms tested:
    w2000
    linux
2002-05-01 10:54:56 -05:00
Quincey Koziol
92527f751f [svn-r5312] Purpose:
Bug Fix

Description:
    Add TRACE8 and TRACE9 macros

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-05-01 10:35:06 -05:00
Quincey Koziol
6a5008e313 [svn-r5310] Purpose:
Code cleanup

Description:
    Update the API tracing information

Platforms tested:
    Linux 2.2 (eirene) with gcc 2.95.2 and Solaris 2.6 (baldric) with gcc 2.8.1
2002-05-01 10:15:30 -05:00