Hi,

hsize_t should be the same (8 bytes) on both 32-bit and 64-bit machines. See H5public.h
#if H5_SIZEOF_LONG_LONG >= 8
typedef unsigned long long  hsize_t;
typedef signed long long    hssize_t;
#       define H5_SIZEOF_HSIZE_T H5_SIZEOF_LONG_LONG
#       define H5_SIZEOF_HSSIZE_T H5_SIZEOF_LONG_LONG
#else
#   error "nothing appropriate for hsize_t"
#endif


I will be very interested in your performance results. Also, check the memory usage
as you test the performance.

Thanks
--pc


Stamminger, Johannes wrote:
Hi,


I just found my problem's cause: a wrong method parameter type mapping
of the nrecords parameter in H5PTappend: I specified it as a java long
(8 bytes) - but with java int (4 bytes) my sample is now working :-)

And this wrong mapping was caused by a wrong (?) H5PTappend api
description in
http://www.hdfgroup.org/HDF5/doc/HL/RM_H5PT.html#H5PTappend: there the
nrecords parameter is stated to be of type hsize_t - thus in the
sourcecode it is defined as size_t. This seems to differ in it's size.
I'm not sure as I'm no C expert but maybe this occurrs only with my a
little bit special environment with running a 64bit linux but the 32bit
version of the hdf5[_hl] libraries ... (?)


So this is a very first proof of that it is very simply possible to use
the H5PT API from java with just a view lines of code with using the JNA
approach (this avoids the - IMHO - JNI hell).
Though I should do some performance measurings to identify the JNA
overhead ...


Best Regards,
Johannes Stamminger

------------------------------------------------------------------------

_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org

_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org

Reply via email to