Ignore:
Timestamp:
06/08/17 17:31:50 (7 years ago)
Author:
yushan
Message:

Bug fixed in MPI_(All)Gatherv with displs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_yushan_merged/extern/src_ep_dev/ep_wait.cpp

    r1153 r1164  
    2222    if(request->type == 1) 
    2323    { 
    24       ::MPI_Request mpi_request = static_cast< ::MPI_Request >(request->mpi_request); 
     24      ::MPI_Request *mpi_request = static_cast< ::MPI_Request* >(&(request->mpi_request)); 
    2525      ::MPI_Status mpi_status; 
    26       ::MPI_Wait(&mpi_request, &mpi_status); 
     26      ::MPI_Errhandler_set(MPI_COMM_WORLD_STD, MPI_ERRORS_RETURN); 
     27      int error_code = ::MPI_Wait(mpi_request, &mpi_status); 
     28      if (error_code != MPI_SUCCESS) { 
     29       
     30         char error_string[BUFSIZ]; 
     31         int length_of_error_string, error_class; 
     32       
     33         ::MPI_Error_class(error_code, &error_class); 
     34         ::MPI_Error_string(error_class, error_string, &length_of_error_string); 
     35         printf("%s\n", error_string); 
     36      } 
    2737 
    2838      status->mpi_status = &mpi_status; 
Note: See TracChangeset for help on using the changeset viewer.