What's the proper way to use shmem_int_fadd() in OpenMPI's SHMEM?
A minimal example seems to seg fault:
#include <cstdlib>
#include <cstdio>
#include <mpp/shmem.h>
int main(int argc, char **argv) {
shmem_init();
const size_t shared_segment_size = 1024;
void *shared_segment = shmem_malloc(shared_segment_size);
int *arr = (int *) shared_segment;
int *local_arr = (int *) malloc(sizeof(int) * 10);
if (shmem_my_pe() == 1) {
shmem_int_fadd((int *) shared_segment, 1, 0);
}
shmem_barrier_all();
return 0;
}
Where am I going wrong here? This sort of thing works in Cray SHMEM.
Ben Bock
_______________________________________________
users mailing list
[email protected]
https://lists.open-mpi.org/mailman/listinfo/users