Closed fouriaux closed 7 years ago
Please note that adios_integer is 4 bytes long. uint64_t and size_t are both 8 bytes long. You need to define your output variable with adios_long type to store such variables correctly. With adios_integer and storing 4 bytes, you are lucky to store the relevant bytes on a little endian machine, so it seems to work.
On Mon, Jul 10, 2017 at 10:52 AM, Jeremy FOURIAUX notifications@github.com wrote:
I have experienced a discrepancy in the behavior of ADIOS on BGQ machine compared to x86: I try to transfer some data using the no-xml API. I delcare my variables as follow:
adios_define_var ( adios_group_id, "global_size", "", adios_integer, "", "", "");
and I am writting this way:
adios_write (adios_handle, "global_size", (void*) &total_size);
I initially declared total_size as uint64_t and tested as well with size_t, this provide correct behavior on x86, but incorrect results on BGQ. replacing the delcaration with int make it functional on BGQ.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ornladios/ADIOS/issues/137, or mute the thread https://github.com/notifications/unsubscribe-auth/ADGMLU-B6lB79De1jJc7eE3oAS2_oSShks5sMjqfgaJpZM4OS9Wo .
sorry my mistake, it makes all sense now.
I have experienced a discrepancy in the behavior of ADIOS on BGQ machine compared to x86: I try to transfer some data using the no-xml API. I delcare my variables as follow:
and I am writting this way:
I initially declared total_size as uint64_t and tested as well with size_t, this provide correct behavior on x86, but incorrect results on BGQ. replacing the delcaration with int make it functional on BGQ.