What platform were you in?
If you were in a Linux system, it is possible that the second time, if done 
right after the first time,
could be faster because Linux may have cache all data files in memory if the 
memory is larger
than all files data read.  If you run the same thing 3 times in a row and if 
there is little change
in performance between the second and third runs, the kernel memory caching 
could be
the reason.

Note that what I offered is a possible reason. Without studying the design and 
implementation
of your software, I can't say for sure that is the reason of the improvement.

About why your database design is slower than the original API read, it is hard 
to determine
why it is slower without studying your implementation.  How much slower did you 
observe?
Is it just 10-20% slower or is it orders of magnitude slower?

-Albert Cheng

On Mar 28, 2014, at 11:16 AM, Nyamtulga Shaandar 
<[email protected]<mailto:[email protected]>> wrote:

Hi
I am totally new to hdf5. Lately, I replicated a database to hdf5 format and 
created API in C for it.But when I read huge compound array from my database 
first time, it is slower than original API (also in C) which is reading same 
info by parsing from a hierarchical text  database. When I run my software 
second time to do same thing, time performance gets little bit better, but 
still slower than original one. So my question is:Is it an expected behaviour?

_hdf5_status = H5Dread( _hdf5_dataset_id, _hdf5_memtype, H5S_ALL, H5S_ALL, 
H5P_DEFAULT, tempC);
tempC is dynamically allocated compound array.

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

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

Reply via email to