You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The documentation of how H5Z-ZFP encodes cd_values suggests that double-precision values are type punned as two unsigned 32-bit integers in the "wrong" order. It says: "A/B are high/low 32-bit words of a double" with A stored before B. The way I read this, A would be the high 32 bits and B the low 32 bits. However, the double is simply stored in little-endian order, with the first word holding the low 32 bits, as is clear from using print_h5repack_farg:
Here 1072693248 = 0x3ff00000 is the high word with 0x3ff representing the exponent. I would propose correcting the order and also using L and H (or Lo, Hi) in place of A and B.
The text was updated successfully, but these errors were encountered:
The documentation of how H5Z-ZFP encodes
cd_values
suggests that double-precision values are type punned as two unsigned 32-bit integers in the "wrong" order. It says: "A/B are high/low 32-bit words of a double" with A stored before B. The way I read this, A would be the high 32 bits and B the low 32 bits. However, the double is simply stored in little-endian order, with the first word holding the low 32 bits, as is clear from usingprint_h5repack_farg
:Here 1072693248 = 0x3ff00000 is the high word with 0x3ff representing the exponent. I would propose correcting the order and also using L and H (or Lo, Hi) in place of A and B.
The text was updated successfully, but these errors were encountered: