ornladios / ADIOS

The old ADIOS 1.x code repository. Look for ADIOS2 for new repo
https://csmd.ornl.gov/adios
Other
54 stars 40 forks source link

writting uint64_t and size_t on BGQ machine #137

Closed fouriaux closed 7 years ago

fouriaux commented 7 years ago

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.

pnorbert commented 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 .

fouriaux commented 7 years ago

sorry my mistake, it makes all sense now.