Write and Read a large number of hyperslabs speed ?

Hi all,

   My questions is similar to Mark Moll's problems in "reading many hyperslabs of varying size in parallel / h5repack question".

    I need to write and need a large number of data, these data are composed of variable length blocks. So, I used

H5Sselect_hyperslab(selection,H5S_SELECT_OR,start,NULL,count,NULL);
   
    But It is extremely slow, I found that H5Sselect_hyperslab cost the most of times. ( It will be called many times since I have to merge each
selection results using H5S_SELECT_OR, each call time is about 1~2 ms in my Linux), And H5Dwrite/H5Dread doesn't cost much time since it only called once)

    Is there any better suggestions to do a lots of selects? ( It will be happy if the function H5Sselect_hyperslab varaible count, block)

Thanks.
tony.