diff options
author | Albert Cheng <acheng@hdfgroup.org> | 2004-08-05 22:32:35 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 2004-08-05 22:32:35 (GMT) |
commit | ee5ce4a27f4a73effaa053f9318f0fc818e40138 (patch) | |
tree | ece1ec4f9777aef97771399b3a98e51b93b12ab5 /test/dsets.c | |
parent | 1276bcc432e8f765ac644beeda02125567e08614 (diff) | |
download | hdf5-ee5ce4a27f4a73effaa053f9318f0fc818e40138.zip hdf5-ee5ce4a27f4a73effaa053f9318f0fc818e40138.tar.gz hdf5-ee5ce4a27f4a73effaa053f9318f0fc818e40138.tar.bz2 |
[svn-r9030] Purpose:
Bug fix (Failures when dataset size >= 1 GB, reported by Bill Loewe.)
Description:
In the IBM AIX system using 32bit mode, if a dataset size was 1GB or
larger, when the "end" of the dataset was selected, MPI would complain
it could not keep the Upper bound of a datatype within the range of
MPI_Aint. This was because the old algorithm would derive the selection
with extent of each row first. After all dimensions were processed,
it then calculate the start position and just displace the whole
MPI derived type. So, the final MPI type was actually the start
position plus the whole dataset. Since the start can be as big as
the whole dataset, this made the final derived twice as big as 1GB.
That would hit the 2GB MPI_Aint range limit in the 32 bit mode.
Solution:
Use a different algorithm to include the start position in the
defining of MPI type for each dimension. When all dimensions
are processed, the MPI type represents the selection exactly.
Platforms tested:
h5committested
Misc. update:
Diffstat (limited to 'test/dsets.c')
0 files changed, 0 insertions, 0 deletions