-
Notifications
You must be signed in to change notification settings - Fork 936
Provide a better fix for #6285. #6326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
minor typo in the commit message, it should refer #6285 |
ec379ba to
e1d31c7
Compare
Looks like something is not right either with the test or the PR. |
|
@bosilca something is not quite right, the result is still not correct (although the offsets are different now). Will look into it later today to see whether I can provide more details. |
|
ok let me check again, on my machine all datatype tests pass. |
|
@bosilca I pushed an other commit to this PR. |
|
Oh the newbie mistake! I did had the feeling that my pull-rebase didn't quite worked but all my tests passed so I went ahead and pushed, and indeed I inherited both my fix and @ggouaillardet. Thanks @ggouaillardet for the better fix of the better fix. |
The issue was a little complicated due to the internal stack used in the convertor. The main issue was that in the case where we run out of iov space to save the raw description of the data while hanbdling a repetition (loop), instead of saving the current position and bailing out directly we reading of the next predefined type element. It worked in most cases, except the one identified by the HDF5 test. However, the biggest issue here was the drop in performance for all ensuing calls to the convertor pack/unpack, as instead of handling contiguous loops as a whole (and minimizing the number of memory copies) we copied data description by data description. Signed-off-by: George Bosilca <[email protected]>
5389d2a to
5a82c4f
Compare
|
I can confirm that the hdf5 data corruption reported by @ax3l and @psychocoderHPC is fixed with this commit. |
|
When this is merged I will also test again Don't forget to backport all related issues also to 2.X, please. |
The issue was a little complicated due to the internal stack used in the
convertor. The main issue was that in the case where we run out of iov
space to save the raw description of the data while hanbdling a
repetition (loop), instead of saving the current position and bailing out
directly we reading of the next predefined type element. It worked in
most cases, except the one identified by the HDF5 test. However, the
biggest issue here was the drop in performance for all ensuing calls to
the convertor pack/unpack, as instead of handling contiguous loops as a
whole (and minimizing the number of memory copies) we copied data
description by data description.
Signed-off-by: George Bosilca [email protected]