Ignore:
Timestamp:
06/21/17 09:09:59 (7 years ago)
Author:
yushan
Message:

save modif

File:
1 edited

Legend:

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

    r1164 r1176  
    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; 
    2626      ::MPI_Errhandler_set(MPI_COMM_WORLD_STD, MPI_ERRORS_RETURN); 
    27       int error_code = ::MPI_Wait(mpi_request, &mpi_status); 
     27      int error_code = ::MPI_Wait(&mpi_request, &mpi_status); 
    2828      if (error_code != MPI_SUCCESS) { 
    2929       
     
    6868    if(request->type == 3) 
    6969    { 
    70       ::MPI_Request *mpi_request = static_cast< ::MPI_Request* >(&(request->mpi_request)); 
     70      ::MPI_Request mpi_request = static_cast< ::MPI_Request >(request->mpi_request); 
    7171      ::MPI_Status mpi_status; 
    7272      ::MPI_Errhandler_set(MPI_COMM_WORLD_STD, MPI_ERRORS_RETURN); 
    73       int error_code = ::MPI_Wait(mpi_request, &mpi_status); 
     73      int error_code = ::MPI_Wait(&mpi_request, &mpi_status); 
    7474      if (error_code != MPI_SUCCESS) { 
    7575       
     
    122122          if(array_of_requests[i].type != 2) // isend or imrecv 
    123123          {       
    124             MPI_Wait(&array_of_requests[i], &array_of_statuses[i]); 
    125             //int tested=false; 
    126             //while(!tested) MPI_Test(&array_of_requests[i], &tested, &array_of_statuses[i]); 
     124            //MPI_Wait(&array_of_requests[i], &array_of_statuses[i]); 
     125            int tested; 
     126            MPI_Test(&array_of_requests[i], &tested, &array_of_statuses[i]); 
     127            if(!tested) MPI_Wait(&array_of_requests[i], &array_of_statuses[i]); 
    127128            finished++; 
    128129            finished_index[i] = true; 
Note: See TracChangeset for help on using the changeset viewer.