forked from lijiext/lammps
Merge pull request #423 from timattox/master_bugfix_irregular
bugfix for irregular::create_atom and create_data
This commit is contained in:
commit
7ca5dce2f5
|
@ -190,6 +190,13 @@ int MPI_Type_size(MPI_Datatype datatype, int *size)
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
int MPI_Request_free(MPI_Request *request)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
int MPI_Send(const void *buf, int count, MPI_Datatype datatype,
|
int MPI_Send(const void *buf, int count, MPI_Datatype datatype,
|
||||||
int dest, int tag, MPI_Comm comm)
|
int dest, int tag, MPI_Comm comm)
|
||||||
{
|
{
|
||||||
|
|
|
@ -89,6 +89,7 @@ int MPI_Finalize();
|
||||||
double MPI_Wtime();
|
double MPI_Wtime();
|
||||||
|
|
||||||
int MPI_Type_size(int, int *);
|
int MPI_Type_size(int, int *);
|
||||||
|
int MPI_Request_free(MPI_Request *request);
|
||||||
|
|
||||||
int MPI_Send(const void *buf, int count, MPI_Datatype datatype,
|
int MPI_Send(const void *buf, int count, MPI_Datatype datatype,
|
||||||
int dest, int tag, MPI_Comm comm);
|
int dest, int tag, MPI_Comm comm);
|
||||||
|
|
|
@ -395,7 +395,9 @@ int Irregular::create_atom(int n, int *sizes, int *proclist, int sortflag)
|
||||||
|
|
||||||
sendmax_proc = 0;
|
sendmax_proc = 0;
|
||||||
for (i = 0; i < nsend_proc; i++) {
|
for (i = 0; i < nsend_proc; i++) {
|
||||||
MPI_Send(&length_send[i],1,MPI_INT,proc_send[i],0,world);
|
MPI_Request tmpReq; // Use non-blocking send to avoid possible deadlock
|
||||||
|
MPI_Isend(&length_send[i],1,MPI_INT,proc_send[i],0,world,&tmpReq);
|
||||||
|
MPI_Request_free(&tmpReq); // the MPI_Barrier below marks completion
|
||||||
sendmax_proc = MAX(sendmax_proc,length_send[i]);
|
sendmax_proc = MAX(sendmax_proc,length_send[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -641,7 +643,9 @@ int Irregular::create_data(int n, int *proclist, int sortflag)
|
||||||
|
|
||||||
sendmax_proc = 0;
|
sendmax_proc = 0;
|
||||||
for (i = 0; i < nsend_proc; i++) {
|
for (i = 0; i < nsend_proc; i++) {
|
||||||
MPI_Send(&num_send[i],1,MPI_INT,proc_send[i],0,world);
|
MPI_Request tmpReq; // Use non-blocking send to avoid possible deadlock
|
||||||
|
MPI_Isend(&num_send[i],1,MPI_INT,proc_send[i],0,world,&tmpReq);
|
||||||
|
MPI_Request_free(&tmpReq); // the MPI_Barrier below marks completion
|
||||||
sendmax_proc = MAX(sendmax_proc,num_send[i]);
|
sendmax_proc = MAX(sendmax_proc,num_send[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue