Commit Graph

152 Commits

Author SHA1 Message Date
Dana Robinson
127d1cfdf0 Minor changes from normalization with 1.10 2020-07-09 08:34:01 -07:00
Quincey Koziol
9e5dbf6906 Trim trailing whitespace 2020-04-20 18:12:00 -05:00
kmu
838d4ec56b squash cast warning fix 2020-01-23 15:12:00 -06:00
Neil Fortner
db6eab893e Implement public H5Sselect_project_intersection(). Updated internal
algorithm to (optionally) avoid sharing selection data structures.
Tested internal code (including with valgrind) by setting VDS code to
avoid sharing selection, has since been changed to share selection for
performance, so this code is not yet tested in regression tests.  API
has not been tested.
2019-11-13 12:54:13 -06:00
Richard Warren
94d14191fa Change API names for get/set bitio_count. Also added H5_mpi_set_bigio_count to H5private.h. 2019-10-23 14:41:45 -04:00
Richard Warren
a97c0d418d At the suggestion of the PR reviewers, moved the mpio_create_large_type to H5mpi.c and renamed the function appropriately. Also moved some support functions to set and get the vvalue where we transistion to using derived datatypes. 2019-10-07 17:22:51 -04:00
Richard Warren
a074eeda11 Made code review edit suggested by Jerome, plus various code updates to files that I touched to eliminate compile warnings (on my Linux box). 2019-10-07 08:56:05 -04:00
Richard Warren
21a18a1cd2 Make the initial bug fixes to allow >2GB writes with Independent IO 2019-10-05 10:18:17 -04:00
Quincey Koziol
9d86314f8b Core changes to selection code from the hyperslab_updates branch. 2019-03-15 20:14:41 -05:00
Quincey Koziol
320eaf91b9 More changes to align with incoming selection improvements. 2019-02-14 16:20:32 -06:00
Quincey Koziol
b5305b25a6 Align develop with incoming hyperslab_updates branch changes. 2019-02-12 21:51:15 -06:00
Dana Robinson
8cf3bfb14b Yanked all MPI-1 calls 2018-11-27 10:31:54 -08:00
Dana Robinson
38c202df4d Updated H5S to use the MPI-2 function MPI_Type_get_exten()
where available. OpenMPI 4.0 removed the deprecated MPI-1
MPI_type_extent() call by default, so this avoids needing
a special OpenMPI build.
2018-11-26 22:10:06 -08:00
Jordan Henderson
e1e10743cf Add configure check for MPI_Mprobe and MPI_Imrecv functions
Add line to libhdf5settings file for status of Parallel writes to
filtered datasets status

Surround Parallel Compression code in MPI_VERSION >= 3 checks

Add disabled message for Parallel Compression built w/ MPI-2

Modify Parallel Compression tests to only run the parallel filtered read
tests when parallel filtered writes are disabled

Update big I/O code to handle being built with MPI-2

Add checks to CMakeLists.txt for MPI_Mprobe and MPI_Imrecv
2018-07-26 12:50:26 -05:00
Binh-Minh Ribler
ec31438afd Fixed HDFFV-10404
Description:
    Applied the typo fixes from user's report.
    The previous pull request couldn't be merged because it was too old,
    and it was too complicated for me to resolve conflicts.
Platform tested:
    Linux/64 (jelly) - very minor
2018-07-13 13:40:22 -05:00
Quincey Koziol
01f196b31a Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into merge_hyperslab_updates 2018-04-29 03:04:21 -05:00
Richard Warren
0c4c562cc5 Include code fixes and additional modifications pointed out by code reviewers 2017-07-10 16:17:26 -04:00
Richard Warren
64d33e5e6e Commited changes to the development branch here to allow a pull request to be published 2017-07-05 16:19:57 -04:00
Larry Knox
89fbe00dec Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
  Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
  Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
  Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
  Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
2017-04-25 16:05:36 -05:00
Quincey Koziol
8859a5a270 Checkpoint normalization against incoming hyperslab / selection / dataspace
improvements.
2017-03-27 20:25:06 -07:00
Quincey Koziol
1023374492 [svn-r27768] Description:
Complete revamp of package initialization/shutdown mechanism in the library.
Each package now has a single init/term routine.

    This new way should avoid packages being re-initialized during library
shutdown and is also be _much_ more proactive about giving feedback for
resource leaks internal to the library.

    Introduces a new "module" header file for packages in the library
(e.g src/H5Fmodule.h) which sets up some necessary package configuration macros
for the FUNC_ENTER/LEAVE macros.  (The VFL drivers have their own slightly
modified version of this header, src/H5FDdrvr_module.h)

    Also cleaned up a bunch of resources leaks all across the library and tests,
along with addressing many warnings, as I encountered them.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/64 3.10.x (kituo) w/serial & parallel
    Linux/64 2.6.x (ostrich) w/serial
2015-09-13 22:58:59 -05:00
Dana Robinson
67ba6cb57d [svn-r27045] Renamed H5_ASSIGN_OVERFLOW() to H5_CHECKED_ASSIGN() and re-ordered
the arguments to be in a more logical order.

Tested on: h5committest
2015-05-10 17:38:04 -05:00
Mohamad Chaarawi
d4e70e8cae [svn-r25922] mpi version check for new mpi 3 features should be >= 3 rather than == 3. 2014-12-23 10:02:40 -05:00
Mohamad Chaarawi
cbd0460b1b [svn-r25921] - wrap MPI 3 usage with MPI_VERSION compile time check.
- build out unbuffered stdout/err for windows
2014-12-23 09:54:47 -05:00
Quincey Koziol
89e2c8822d [svn-r25766] Description:
Revert r25273, 25283 & 25439 (the hyperslab improvement changes).  They
are buggy and it's taking me a long time to correct the problem.  I'll check
in a revised form of the changes when I've got them straightened out.

Tested on:
    Mac OSX 10.10.0 (amazon) w/gcc 4.9.x, C++, FORTRAN
    Linux 2.6.x (jam) w/parallel
2014-11-03 15:13:25 -05:00
Mohamad Chaarawi
333f1d4783 [svn-r25516] remove use of MPI_LB and MPI_UB deprecated markers and use resize instead. 2014-08-06 12:10:54 -05:00
Mohamad Chaarawi
7433fb9dc1 [svn-r25514] Replace MPI deprecated routines with undeprecated ones. 2014-08-05 10:36:38 -05:00
Mohamad Chaarawi
43b3c20c93 [svn-r25386] remove double declaration of off and len. 2014-07-01 15:06:22 -05:00
Quincey Koziol
4ccb865c70 [svn-r25273] Description:
Bring in Chao/Neil/my changes to optimize hyperslab selection operations
further, along with 3 new public API routines: H5Scombine_hyperslab(),
H5Sselect_select() and H5Scombine_select(), along with many minor cleanups to
the code and fixing a few compiler warnings.

Tested on:
    Mac OSX/64 10.9.3 w/gcc 4.9.x and parallel w/OpenMPI
    (h5commttest forthcoming)
2014-06-13 01:23:57 -05:00
Quincey Koziol
ac0ef34a41 [svn-r24769] Description:
Check in Mohamad's changes to support collective I/O on point selections,
along with some other minor cleanups.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/parallel & serial
    (h5committest forthcoming)
2014-03-07 14:12:20 -05:00
Mohamad Chaarawi
863ff882b6 [svn-r24709] rename H5V to H5VM since H5V is needed in the fastforward project for
view objects.  The addition of view objects in the fastforward project
is expected to be brough into the trunk sometimes in the future, which
is why we need to make this change.

Tested Manually on Jam and Ostrich.
Tested with h5commitest - Koala with intel compilers failed, but nothing had to do with those changes.
error on Koala: error while loading shared libraries: libirng.so
2014-02-13 17:12:46 -05:00
Quincey Koziol
447d13e82b [svn-r22312] Description:
Correct error reported by user (Martin Otte) where we weren't using
realloc'ed buffer in MPI datatype code.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/parallel
2012-04-23 14:21:23 -05:00
Quincey Koziol
9c9ee2008c [svn-r21919] Description:
Refactor function name macros and simplify the FUNC_ENTER macros, to clear
away the cruft and prepare for further cleanups.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
2012-02-08 22:13:27 -05:00
Quincey Koziol
f9d2419501 [svn-r19744] Description:
Clean up compiler warnings and neaten up code a bit.

Tested on:
	Linxu/64 2.6.32 (ember) w/parallel
2010-11-08 16:10:23 -05:00
Quincey Koziol
f82774c0d5 [svn-r19092] Description:
Bring "shape same" changes from LBL branch to trunk.  These changes
allow shapes that are the same, but projected into dataspaces with different
ranks to be detected correctly, and also contains code to project a dataspace
into greater/lesser number of dimensions, so the I/O can proceed in a faster
way.

	These changes also contain several bug fixes and _lots_ of code
cleanups to the MPI datatype creation code.

	Many other misc. code cleanup are included as well...

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.3 (amazon) in debug mode
        Mac OS X/32 10.6.3 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2010-07-19 00:05:45 -05:00
Quincey Koziol
13a6885db3 [svn-r18565] Description:
Minor whitespace and compiler warning cleanups

Tested on:
    Mac OS X/32 10.6.3 (amazon) w/debug
    (too minor to require h5committest)
2010-04-15 13:01:56 -05:00
Quincey Koziol
b4ff3e6e79 [svn-r16560] Description:
Remove another call to H5E_clear_stack() from within the library.

    Clean up lots of compiler warnings.

Tested on:
    Mac OS X/32 10.5.6 (amazon)
    (followup on other platforms forthcoming)
2009-03-10 14:00:39 -05:00
Quincey Koziol
bdd7d59902 [svn-r15628] Description:
Remove trailing whitespace from C/C++ source files, with the following
script:

    foreach f (*.[ch] *.cpp)
        sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
    end

Tested on:
    Mac OS X/32 10.5.5 (amazon)
    No need for h5committest, just whitespace changes...
2008-09-16 10:52:51 -05:00
Scot Breitenfeld
aec106e324 [svn-r14903] Undoing change committed in r14902. 2008-04-30 14:51:13 -05:00
Scot Breitenfeld
5773fd34bc [svn-r14902] Merged fortran_1_8 branch changes r14505:14901 into the trunk. New fortran wrappers added. 2008-04-30 14:23:26 -05:00
Quincey Koziol
495ca9c7bb [svn-r14860] Description:
Omnibus raw data I/O revisions, with wide-ranging changes and
refactoring, in order to prepare for implementing "fast append" feature.

	These changes remove the majority of the code duplication for raw data
I/O which has crept in over the last ten years and introduces a more object-
oriented design for operating on different types of dataset storage.

	Chunked storage no longer has it's own I/O routines, it is now handled
as either contiguous (if chunk is not pulled into the cache) or compact (if the
chunk is cached in memory).

	No bug or feature changes, at least intentionally... :-)

Tested on:
        FreeBSD/32 6.2 (duty) in debug mode
        FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Mac OS X/32 10.5.2 (amazon) in debug mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
2008-04-24 10:03:41 -05:00
MuQun Yang
8762243f56 [svn-r13733] Changed more parallel debugging info. to a more standard way by using H5DEBUG.
Have tested at linux to make sure the change won't cause any compiling errors or testing errors.
2007-05-04 08:53:57 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG 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.
2007-02-07 09:56:24 -05:00
Quincey Koziol
aab7fd598f [svn-r12218] Purpose:
Code cleanup

Description:
    Remove remnents of references to unimplemented H5S_COMPLEX dataspace.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 32-bit (heping)
    Linux 2.4 64-bit (mir)
    Solaris 2.9 (shanti)
2006-04-09 21:51:05 -05:00
MuQun Yang
f1179bc82c [svn-r11321]
Purpose:
Add some comments and error checking codes for collective chunk IO code.
Description:

Solution:

Platforms tested:
AIX 5.1(copper), too minor to test at other platforms.

Misc. update:
2005-08-31 10:54:32 -05:00
MuQun Yang
1e7062e6b2 [svn-r11316]
Purpose:
bug fix for collective chunk IO
Description:
When using calloc to allocate an MPI datatype, one should use sizeof(MPI datatype) instead of sizeof(equalivent non-MPI datatype) to assign the value, this causes the problem at 64-bit platforms such IRIX65 and AIX 5.1.
Solution:
Correct it.

Platforms tested:
AIX 5.1 and IRIX6.5(at NCAR).

Misc. update:
2005-08-30 11:39:00 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
Code cleanup

Description:
    Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.

Solution:
    Ran this script in each directory:

foreach f (*.[ch] *.cpp)
    sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
end


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-08-13 15:53:35 -05:00
Quincey Koziol
1ba06a8395 [svn-r11235] Purpose:
Code cleanup

Description:
    Refactor, simplify and cleanup Kent's recent checking for collective
chunk I/O.  There's a bug that I need to talk to Kent about and some more
cleanups still, but this is reasonable for an interim point.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/parallel
    Too minor for h5committest
2005-08-12 10:53:55 -05:00
MuQun Yang
870c5b2f66 [svn-r11231] Purpose:
bug fix for collective chunk IO, phase 1
Optimization hasn't been done yet, the collective chunk IO bug should be fixed.
Description:
In chunking storage, memory space and file space will be remapped, So to check
whether file space and memory space are regular in order to use optimized MPI derived
datatype for collective call one has to check per-chunk wise instead of per hyperslab wise.
Even a regular memory space will be stored in span-tree and will be irregular before chunk IO.

Solution:
1. Check file space and memory space per chunk wise instead of per hyperslab wise.
2. For collective IO mode, number of chunks covered by hyperslab may be different. Since we are
handing per chunk per IO, for the extra chunk IO for some(not all) processors, collective mode will
cause program hanged. So for the extra chunk Io mode independent IO has to be used.
3. On some platforms, Complex MPI derived datatype is not working, so we have to use independent IO for collective IO mode if the selection is irregular. However, when the selection is regular, we do want to use collective IO since that will improve performance. Special cares have to be added for this case.


Platforms tested:
copper(AIX 5.1) Linux(heping mpich 1.2.6), Teragrid machine, Cobalt(altix), modi4

Misc. update:
2005-08-11 13:48:09 -05:00
MuQun Yang
1d6c4017ec [svn-r10545] Purpose:
Activating collective IO supports for irregular selction inside HDF5 dataset.
This support doesn't include to build the final complicated MPI derived datatype support for chunking storage.

Description:
Support collective chunk IO for both contiguous and chunking storage for irregular selection( using H5S_SELECT_OR for multiple hyperslab selection)
Solution:
Using MPI derived datatype to realize this feature.
Problems still need to be investigated:
 Big size irregular hyperslab selection test may cause MPI hang or abnormalexit with MPICH family on various platforms. This is really hard to debug since sometimes it can work and sometimes it cannot work. We will continue investigating those cases. This may not be parallel HDF5 bugs since with the recent version of poe at IBM platforms, all tests passed.


Platforms tested:
1. Linux heping 2.4.21-27.0.1 with mpich
2. AIX 5.1 copper with mpcc_r
3. Altix cobalt SGI linux 2.4.21-sgi304rp05031014_10149 with icc -lmpi
4. Linux Cluster SDSC TG, intel 8-r2 with mpich 1.2.5
5. NCSA Linux Cluster Tungsten, MPICH-TCP-1.2.5.2, Intel 8.0 under lustre
6. NCSA Linux Cluster Tungsten, MPICH-LAM-INTEL711, sometimes not working
7. NCSA Linux CLuster Tungsten, champion-pro-1.2.0-3, not working for other collective IO tests, but work for irregular selection collective IO test.

Misc. update:
2005-04-05 14:41:20 -05:00