@@ -95,6 +95,7 @@ Output variables:
9595 int dest , source ;
9696 MPI_Status stat ;
9797 MPI_Request * requests = NULL ;
98+ MPI_Status * statuses = (MPI_Status * )_alloca ((c_info -> max_win_size ) * sizeof (MPI_Status ));
9899
99100 int ws , peers ;
100101 char ack ;
@@ -134,8 +135,7 @@ Output variables:
134135 s_tag ,
135136 c_info -> communicator ,
136137 & requests [ws ]));
137-
138- MPI_Waitall (c_info -> max_win_size , & requests [0 ], MPI_STATUSES_IGNORE );
138+ MPI_Waitall (c_info -> max_win_size , & requests [0 ], statuses );
139139 MPI_Recv (& ack , 1 , MPI_CHAR , dest , r_tag , c_info -> communicator , & stat );
140140 }
141141 }
@@ -150,8 +150,7 @@ Output variables:
150150 r_tag ,
151151 c_info -> communicator ,
152152 & requests [ws ]));
153-
154- MPI_Waitall (c_info -> max_win_size , & requests [0 ], MPI_STATUSES_IGNORE );
153+ MPI_Waitall (c_info -> max_win_size , & requests [0 ], statuses );
155154 MPI_Send (& ack , 1 , MPI_CHAR , source , s_tag , c_info -> communicator );
156155 }
157156 }
@@ -204,8 +203,8 @@ Output variables:
204203 int s_tag , r_tag ;
205204 int dest , source ;
206205 MPI_Status stat ;
207- const int max_win_size2 = 2 * c_info -> max_win_size ;
208206 MPI_Request * requests = NULL ;
207+ MPI_Status * statuses = (MPI_Status * )_alloca ((2 * c_info -> max_win_size ) * sizeof (MPI_Status ));
209208
210209 int ws , peers ;
211210 char ack ;
@@ -255,7 +254,7 @@ Output variables:
255254 c_info -> communicator ,
256255 & requests [ws + c_info -> max_win_size ]));
257256
258- MPI_Waitall (max_win_size2 , & requests [0 ], MPI_STATUSES_IGNORE );
257+ MPI_Waitall (2 * c_info -> max_win_size , & requests [0 ], statuses );
259258 MPI_Recv (& ack , 1 , MPI_CHAR , dest , r_tag , c_info -> communicator , & stat );
260259 }
261260 }
@@ -279,7 +278,7 @@ Output variables:
279278 c_info -> communicator ,
280279 & requests [ws + c_info -> max_win_size ]));
281280
282- MPI_Waitall (max_win_size2 , & requests [0 ], MPI_STATUSES_IGNORE );
281+ MPI_Waitall (2 * c_info -> max_win_size , & requests [0 ], statuses );
283282 MPI_Send (& ack , 1 , MPI_CHAR , source , s_tag , c_info -> communicator );
284283 }
285284 }
0 commit comments