I am new to MPI and bit confused about the data communication between CPUs of different nodes. How do cpus communicate data between them when they are located in different nodes?
For example I want to send and recv data from once to other :
MPI_Send(
void* data, // This is a pointer that cpu-1 in Node-1 want to sent to cpu-2 in node-2,
int count,
MPI_Datatype datatype,
int destination,
int tag,
MPI_Comm communicator)
MPI_Recv(
void* data, // I receive the pointer from Node-1, but this pointer corresponds to different memory in Node-2. How does this work?
int count,
MPI_Datatype datatype,
int source,
int tag,
MPI_Comm communicator,
MPI_Status* status)