int MPI_Get(void* origin_addr, int origin_count, MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win) { int ret; client_t* myclient = window_get_client(win); cqueue_t* mycqueue = client_get_cqueue(myclient); if (myclient == NULL) ret = PMPI_Get(origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win); else ret = cqueue_get(mycqueue, origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win); return ret; }
int MPI_Get_C_Wrapper (void *origin_addr, int origin_count, MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win) { int ierror; int origin_datatype_size, target_datatype_size; ierror = PMPI_Type_size(origin_datatype, &origin_datatype_size); MPI_CHECK(ierror, PMPI_Type_size); ierror = PMPI_Type_size(target_datatype, &target_datatype_size); MPI_CHECK(ierror, PMPI_Type_size); TRACE_MPIEVENT(LAST_READ_TIME, MPI_GET_EV, EVT_BEGIN, target_rank, origin_datatype_size * origin_count, EMPTY, target_disp * target_datatype_size, origin_addr); ierror = PMPI_Get (origin_addr, origin_count, origin_datatype, target_rank, target_disp, target_count, target_datatype, win); TRACE_MPIEVENT(TIME, MPI_GET_EV, EVT_END, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY); updateStats_OTHER(global_mpi_stats); return ierror; }
int MPI_Get( void *origin_addr, int origin_count, MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win){ return PMPI_Get( origin_addr,origin_count, origin_datatype,target_rank, target_disp, target_count,target_datatype, win); }