+ MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Request* request=nullptr);
+ int get_accumulate( void *origin_addr, int origin_count, MPI_Datatype origin_datatype, void *result_addr,
+ int result_count, MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp, int target_count,
+ MPI_Datatype target_datatype, MPI_Op op, MPI_Request* request=nullptr);
+ int compare_and_swap(void *origin_addr, void *compare_addr,
+ void *result_addr, MPI_Datatype datatype, int target_rank,
+ MPI_Aint target_disp);
+ static Win* f2c(int id);
+
+ int lock(int lock_type, int rank, int assert);
+ int unlock(int rank);
+ int lock_all(int assert);
+ int unlock_all();
+ int flush(int rank);
+ int flush_local(int rank);
+ int flush_all();
+ int flush_local_all();
+ int finish_comms();
+ int finish_comms(int rank);