I have following structure of MPI code - int main(){
MPI_INIT..... //initialize MPI data = malloc(sizeof(int)*200); //initialize data /*--------Master---------*/ if(taskid == 0){ //send data to each slave MPI_SEND.... } /*----Slaves-------*/ if(taskid > 0){ //accept data from master MPI_RECV.... //do some calculations } MPI_Finalize() } I have few doubts about the code above. In above code, the data is allocated memory in the main program. If I run this program on cluster where node 1 is slave and node 0 is master, does node 1 actually shares the memory location of node 0 to perform the calculations? If I do not want to share the memory, how can i make task on node 1 work independently ? Thanks in advance.