diff options
author | Robb Matzke <matzke@llnl.gov> | 1999-06-18 15:12:18 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1999-06-18 15:12:18 (GMT) |
commit | 8baa67525092387f0e5b8ce7e139a9a6849c2c63 (patch) | |
tree | 59b08e44f1913c85fe5f72b5a139d0aa59cae3bc /src/H5Tprivate.h | |
parent | ca9f4c3888a5763b20b696ace5e213ab0f72f6e6 (diff) | |
download | hdf5-8baa67525092387f0e5b8ce7e139a9a6849c2c63.zip hdf5-8baa67525092387f0e5b8ce7e139a9a6849c2c63.tar.gz hdf5-8baa67525092387f0e5b8ce7e139a9a6849c2c63.tar.bz2 |
[svn-r1362]
Changes since 19990616
----------------------
./src/H5T.c
./src/H5Tconv.c
All conversion functions take an extra argument called
`stride' which is the number of bytes to advance the source
and destination pointers after each element is converted. If
the value is zero then the old behavior is preserved (source
and destination values are packed). This feature was necessary
to implement the compound datatype conversion optimizations
and it causes a minor change to the API (application-defined
type conversion functions take an extra size_t stride
argument).
./src/H5Tconv.c
An additional compound data type conversion function was added
which is applied unless the destination type is larger than
the source type. I'm measuring significant performance
increases for certain operations:
Test Name Struct-Conv Noop-Conv
New(Old) MB/s New(Old) MB/s
---------- ------------- -------------
Reordering 2.062(0.3936) 54087(0.9047)
Subsetting 2.901(0.6581) 40192(1.1100)
Shrinking 1.976(0.3925) 33628(1.1500)
---------- ------------- -------------
./test/dtypes.c
Added various compound datatype conversion tests.
Fixed return values from functions.
./src/H5T.c
Conversion timers are updated only if H5T debugging is turned
on a runtime (in addition to compile time). This allows the
data type layer to be compiled with debugging support without
having to pay a big runtime penalty if the debugging isn't
actually used.
./src/H5A.c
./src/H5D.c
./src/H5Ofill.c
./src/H5P.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
Added the stride argument to the H5T_convert() calls. The
stride is always zero, which means that the source and
destination data values are packed.
./configure.in
./configure [REGENERATED]
If API tracing is turned off then libhdf5.settings will say
`no' instead of nothing.
./test/flush1.c
./test/flush2.c
Added better error messages in a couple places.
Diffstat (limited to 'src/H5Tprivate.h')
-rw-r--r-- | src/H5Tprivate.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/H5Tprivate.h b/src/H5Tprivate.h index 3a3da40..5d0fe43 100644 --- a/src/H5Tprivate.h +++ b/src/H5Tprivate.h @@ -97,7 +97,7 @@ __DLL__ H5T_path_t *H5T_path_find(const H5T_t *src, const H5T_t *dst, __DLL__ herr_t H5T_sort_value(H5T_t *dt, int *map); __DLL__ herr_t H5T_sort_name(H5T_t *dt, int *map); __DLL__ herr_t H5T_convert(H5T_path_t *tpath, hid_t src_id, hid_t dst_id, - size_t nelmts, void *buf, void *bkg); + size_t nelmts, size_t stride, void *buf, void *bkg); __DLL__ herr_t H5T_set_size(H5T_t *dt, size_t size); __DLL__ herr_t H5T_set_precision(H5T_t *dt, size_t prec); __DLL__ herr_t H5T_set_offset(H5T_t *dt, size_t offset); |