summaryrefslogtreecommitdiffstats
path: root/src/H5Fseq.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-05-01 03:29:00 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-05-01 03:29:00 (GMT)
commit4f0b880861c6d719ef30302ebc522abdaf84b292 (patch)
tree15cd04cb350ccb916cd393dd2d19c54ab6997b77 /src/H5Fseq.c
parenta4281bd2f22a871fb9a5f7d5b0180f19efc3c73d (diff)
downloadhdf5-4f0b880861c6d719ef30302ebc522abdaf84b292.zip
hdf5-4f0b880861c6d719ef30302ebc522abdaf84b292.tar.gz
hdf5-4f0b880861c6d719ef30302ebc522abdaf84b292.tar.bz2
[svn-r8456] Purpose:
Code optimization Description: Eliminate more 64-bit multiplies by remebering the size of contiguous datasets as well as chunked datasets. Platforms tested: Solaris 2.7 (arabica) FreeBSD 4.9 (sleipnir) too minor to require h5committest
Diffstat (limited to 'src/H5Fseq.c')
-rw-r--r--src/H5Fseq.c18
1 files changed, 2 insertions, 16 deletions
diff --git a/src/H5Fseq.c b/src/H5Fseq.c
index 3e8ce3b..dcd12cc 100644
--- a/src/H5Fseq.c
+++ b/src/H5Fseq.c
@@ -226,15 +226,8 @@ H5F_seq_readvv(H5F_t *f, const struct H5D_dxpl_cache_t *dxpl_cache, hid_t dxpl_i
buf))<0)
HGOTO_ERROR(H5E_IO, H5E_READERROR, FAIL, "external data read failed");
} else {
- hsize_t max_data; /*bytes in dataset */
- unsigned u; /*counters */
-
- /* Compute the size of the dataset in bytes */
- for(u=1, max_data=layout->dim[0]; u<layout->ndims; u++)
- max_data *= layout->dim[u];
-
/* Pass along the vector of sequences to read */
- if((ret_value=H5F_contig_readvv(f, max_data, layout->addr,
+ if((ret_value=H5F_contig_readvv(f, layout->chunk_size, layout->addr,
dset_max_nseq, dset_curr_seq, dset_len_arr, dset_offset_arr,
mem_max_nseq, mem_curr_seq, mem_len_arr, mem_offset_arr,
dxpl_id, buf))<0)
@@ -342,15 +335,8 @@ H5F_seq_writevv(H5F_t *f, const struct H5D_dxpl_cache_t *dxpl_cache,
buf))<0)
HGOTO_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "external data write failed");
} else {
- hsize_t max_data; /* Bytes in dataset */
- unsigned u; /* Local index variable */
-
- /* Compute the size of the dataset in bytes */
- for(u=1, max_data=layout->dim[0]; u<layout->ndims; u++)
- max_data *= layout->dim[u];
-
/* Pass along the vector of sequences to write */
- if ((ret_value=H5F_contig_writevv(f, max_data, layout->addr,
+ if ((ret_value=H5F_contig_writevv(f, layout->chunk_size, layout->addr,
dset_max_nseq, dset_curr_seq, dset_len_arr, dset_offset_arr,
mem_max_nseq, mem_curr_seq, mem_len_arr, mem_offset_arr,
dxpl_id, buf))<0)