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
I contend that GA should just use ARMCI_Malloc_local here since that will never fail and is the right kind of memory anyways. While ARMCI_Malloc_local might not be as cheap as MA_Push, it's trivial compared to GA_Transpose.
This is a TODO for me to fix.
The text was updated successfully, but these errors were encountered:
GA_Transpose uses ga_malloc, which defaults to using
MA memory. this means that GA requires MA to be initialized.
this changes GA_Transpose to use ARMCI memory.
if ARMCI_Malloc_local is much slower than ga_malloc, this might
be noticeable (because the block is called in the loop)
but that seems unlikely at this point.
it is trivial to revert to the old implementation by undefining
the macro (GA_TRANSPOSE_USE_ARMCI_MEM) that enables this.
fix issue GlobalArrays#163
Signed-off-by: Jeff Hammond <jeff.science@gmail.com>
GA_Transpose uses ga_malloc, which defaults to using
MA memory. this means that GA requires MA to be initialized.
this changes GA_Transpose to use ARMCI memory.
if ARMCI_Malloc_local is much slower than ga_malloc, this might
be noticeable (because the block is called in the loop)
but that seems unlikely at this point.
it is trivial to revert to the old implementation by undefining
the macro (GA_TRANSPOSE_USE_ARMCI_MEM) that enables this.
fix issue #163
Signed-off-by: Jeff Hammond <jeff.science@gmail.com>
Signed-off-by: Jeff Hammond <jeff.science@gmail.com>
In the process of writing and testing https://github.com/ParRes/Kernels/blob/master/FORTRAN/transpose-ga.F90, I found that GA_Transpose crashes unless MA is initialized (https://github.com/GlobalArrays/ga/blob/master/global/src/global.nalg.c#L1082) because
ga_malloc
defaults to using MA (https://github.com/GlobalArrays/ga/blob/master/global/src/ga_malloc.c).I contend that GA should just use ARMCI_Malloc_local here since that will never fail and is the right kind of memory anyways. While ARMCI_Malloc_local might not be as cheap as MA_Push, it's trivial compared to GA_Transpose.
This is a TODO for me to fix.
The text was updated successfully, but these errors were encountered: