| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Include the Stream VFD's header file H5FDstream.h.
Description:
All the VFD's header files are included by hdf5.h itself for convenience.
|
|
|
|
|
|
|
|
| |
Add the Stream VFD sources to the appropriate makefile variables.
Description:
Added H5FDstream.c to the LIB_SRC variable and H5FDstream.h
to the PUB_HDR variable for building the Stream VFD.
|
|
|
|
|
|
|
|
|
|
| |
Define HAVE_STREAM.
Description:
If the Stream VFD was configured the configured script
will expand this into
'#define HAVE_STREAM 1' in H5config.h and
'#define H5_STREAM 1' in H5pubconf.h.
|
|
|
|
|
|
|
| |
Added registration of the Stream Virtual File Driver.
Description:
The Stream VFD is registered here if it was configured.
|
|
|
|
|
|
|
|
|
|
|
| |
Added the H5FD_stream_fapl_t type to the TypeString mapping table.
Description:
This servers for proper substitution of the H5TRACE macros in the
Stream VFD sources.
Platforms:
All platforms.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added source files for the Stream Virtual File Driver.
Description:
The Stream VFD allows users to stream complete HDF5 files
via socket connections between different applications.
Files which were created anew are flushed to any connected client
on each H5Fflush() or H5Fclose() operation.
Files which are opened as read-only will be read from a socket
on a H5Fopen() call.
The driver's H5FDset_fapl_stream() routine allows to pass in
several parameters such as an external socket descriptor,
some socket options, and flags for broadcasting a received file.
If an external socket is provided the Stream VFD would use that
for the socket calls. Otherwise it parses the filename argument
in H5Fcreate()/H5Fopen() for a 'hostname::port' parameter.
All files processed by the Stream VFD are kept in memory
(same way as the core VFD does).
Platforms:
Tested so far under Linux, Irix 32/64bit, OSF1, Solaris, Cray Unicos,
Hitachi SR8000, IBM AIX.
Not tested under Windows yet.
|
|
|
|
|
|
|
|
|
|
| |
Add the socket library to make's LIBS variable.
Description:
The socket library is needed to build HDF5 with the Stream VFD.
Platforms:
Solaris
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added new option --with-Stream-VFD.
Description:
The configure option --with-Stream-VFD[={yes}|{no}] is used
to configure HDF5 to build the Stream Virtual File Driver.
The default is not to build it.
Platforms:
all platforms
|
|
|
|
|
|
|
|
|
|
| |
Upgrade of GNU tools.
Description:
Upgraded the aclocal.m4 to the newest version of libtool.m4.
Platforms:
Linux.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix last couple of errors from introducing "regular" hyperslab feature
into the library.
Description:
Code was blindly dereferencing data structures which aren't defined when
operating on regular hyperslabs.
Solution:
Check for regular hyperslab defined and retrieve information from regular
hyperslab info instead of mucking about in other hyperslab information.
Platforms:
Solaris 2.6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cleaned up the configure file a bit.
Description:
There were a few small bugs having to do with checking if strings
were empty. Also needed to force paths to be absolute instead of
relative.
Solution:
I standardized string checking (test -z for an empty string and
test -n for a non-empty string). Also, if the user specifies a
relative path for any of the options, the configure now makes it
into an absolute path for both CPPFLAGS and LDFLAGS macros.
Platforms:
Solaris, Linux
|
|
|
|
| |
command line arguments are given).
|
|
|
|
|
|
|
| |
declaration.
Przemek Klosowski, Ph.D. <przemek@nist.gov> reported this problem on
Linux RH 6.1 systems.
|
|
|
|
|
|
| |
instead of 36 1x1
hyperslabs.
|
|
|
|
|
|
| |
tests are
passing, but not all of them yet...
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On my benchmarks,
they are about 4-5 times faster than before. We no longer generate "general"
hyperslab data structures for regular hyperslabs, the general data structures
are only generated when needed for irregular hyperslabs.
Still fixing a couple of nook-and-cranny functions to understand the new
information for the regular hyperslabs, so the tests aren't completely passing,
but I wanted to get this checked in for Elena's benchmarks. I should have
more/all tests passing later today.
|
| |
|
|
|
|
|
|
| |
care of much
more nicely in the config/commence file...
|
|
|
|
|
|
|
|
| |
created
in the configure script, basically replacing all -L/<path> constructs
with -R/<path> ones so that libtools will pass it along to the compiler
correctly.
|
|
|
|
|
|
|
|
| |
add the
equivalent -R/<path> to the LT_LINK_EXE command. Therefore, any
executables created will know where we got the different libraries from
automagically.
|
|
|
|
|
|
| |
problem with
FILENAME being extern global...
|
|
|
|
| |
h5test.o, which requires the definition to work...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The "FILENAME" declared extern in h5test.h is not always used.
It was used in h5_cleanup to remove temporary files created
during tests. Not all tests codes have used this routine.
Indeed, quite a few of test programs do "#define FILENAME ".
Also, h5_cleanup needs to work in tandem with h5_fixname.
h5_fixname accepts an explicite base_name argument instead
of using the global variable FILENAME. That is cleaner.
Solution:
Added char *base_name[] as a new argument to h5_cleanup, in
the same style as h5_fixname. Removed "extern char *FILENAME..."
from use. Also, undo some unnecessary declaration of "char *FILENAME"
from some tests which don't use it at all (yet).
Platforms tested:
modi4-64(irix64), arabica(solari2.7), eirene(linux)
(arabica could not launch tests automatically. I had to hack
in LD_LIBRARY_PATH to make them run.)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with
zlib, and zlib isn't in our LD_LIBRARY_PATH or in a standard system
library place (/usr/lib or /lib), then the tests can't run. This fixes it
if the person configures the source with the flag:
--with-zlib=/usr/fnord/include,/usr/fnord/lib
This only works if you're pointing to the shared library version in the
above flag...
|
|
|
|
|
|
|
| |
libh5test, but
libh5test wants FILENAME to be defined. I have no clue why this was
working before...
|
| |
|
|
|
|
|
|
| |
static.
Also I'm keeping the place the user indicated the zlib would be...
|
|
|
|
|
| |
RM_H5Z.html
Corrected compression cross-reference.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
__cplusplus
macro didn't work on all systems. This fixes it.
This also introduces the ability to configure for fortran and c++. This
is not to be implemented yet, though!
|
| |
|
| |
|
| |
|
|
|
|
| |
autoheader, it was useless to add them in here...
|
|
|
|
|
|
|
| |
src/H5{pub}config.h
files. I append to them an #undef of the inline macro. Then, if it's a
C++ compiler, the inline keyword isn't redefined incorrectly...
|
|
|
|
|
|
| |
in C++
and, when adding the header to a C++ program, breaks it.
|
| |
|
|
|
|
|
|
| |
and dynamicly
allocated memory.
|
|
|
|
|
|
|
|
| |
variable instead of
multi-dereferenced pointer chains. This buys us another ~20% improvement in
the hyperslab I/O speed. (From ~30 seconds to ~25 seconds on the h5hypers
benchmark)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fixes
Description:
All tests were core=dumping in IRIX64. The bug is in Generic
property list creation in which malloc asked for 2*64-1 bytes
due to coding bug. The object creation failed but the return
code was not checked. Program eventually crashed.
Solution:
H5F.c:
Check the return code from new file object creation and flag
error accordingly.
H5FL.c:
H5FL_arr_free is a replacement for H5MM_xfree which accepts
null value as a legal argument value. H5FL_arr_free assert
on it. Since other parts of the code have been passing null
value to H5MM_xfree, H5FL_arr_free must accept it too until
all the calling routines are changed to not pass Null.
H5P.c:
some routine passes in 0 as the hashsize value which is uintn.
The expression (hashsize-1) underflows to the largest unsigned
int for some machines. Thus the calloc failed. Cast hashsize
to unsigned int first (this assumes hashsize stays within the
signed int data range.
H5Smpio.c:
Added the extra parameter because the H5FD_write has been redefined.
Platforms tested:
IRIX64 -64 and -n32
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
changes
applied for various platforms which weren't supported by libtools are now
standard for libtools it seems. There were only a few of the previous
fixes I rolled forward (the diffs follow):
config.sub:
750a760,763
> tflop*)
> basic_machine=i386-intel
> os=-osf1
> ;;
ltmain.sh:
2911c2911
< $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
---
> $shlibpath_var=\"$finalize_shlibpath$temp_rpath\$$shlibpath_var\"
|
|
|
|
| |
error).
|
|
|
|
| |
FAIL...Fixed.
|
|
|
|
|
|
|
|
| |
arrays of
hyperslab boundaries after adding them all, instead of maintaining the sorted
order during each addition. This boosts performance for sub-sampled (i.e.
strided) hyperslabs by about a factor of 10! :-)
|
|
|
|
|
|
| |
garbage collect and
not eat all the memory in the machine (by default :-)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
structures. Also
added code to allow metadata to be allocated out of a more contiguous block
("metadata aggregation") and also code for "catching" small metadata write
calls and building a buffer of the small pieces of metadata for later writing
as one, larger, block ("metadata accumulation"). These features are enabled
on a per VFL driver basis with the new VFL 'query' call and both currently
enabled for the sec2, family and stdio drivers. The mpio VFL driver enables
only the "metadata aggregation" code, not the "metadata accumulation" code.
All the other drivers have these features turned off.
|
|
|
|
|
|
| |
aggregation and
accumulation to be enabled and tracked. Also updated some prototypes.
|