mpi conformance: fix prototypes
- MPI_Compare_and_swap - MPI_Fetch_and_op - MPI_Raccumulate - MPI_Win_detach Thanks to Michael Knobloch and Takahiro Kawashima for bringing this to our attention
Этот коммит содержится в:
родитель
7e6a213465
Коммит
21b1e7f8c5
@ -17,6 +17,8 @@
|
||||
* reserved.
|
||||
* Copyright (c) 2011-2013 INRIA. All rights reserved.
|
||||
* Copyright (c) 2015 University of Houston. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -1333,7 +1335,7 @@ OMPI_DECLSPEC int MPI_Comm_spawn_multiple(int count, char *array_of_commands[],
|
||||
OMPI_DECLSPEC int MPI_Comm_split(MPI_Comm comm, int color, int key, MPI_Comm *newcomm);
|
||||
OMPI_DECLSPEC int MPI_Comm_split_type(MPI_Comm comm, int split_type, int key, MPI_Info info, MPI_Comm *newcomm);
|
||||
OMPI_DECLSPEC int MPI_Comm_test_inter(MPI_Comm comm, int *flag);
|
||||
OMPI_DECLSPEC int MPI_Compare_and_swap(void *origin_addr, void *compare_addr,
|
||||
OMPI_DECLSPEC int MPI_Compare_and_swap(const void *origin_addr, const void *compare_addr,
|
||||
void *result_addr, MPI_Datatype datatype, int target_rank,
|
||||
MPI_Aint target_disp, MPI_Win win);
|
||||
OMPI_DECLSPEC int MPI_Dims_create(int nnodes, int ndims, int dims[]);
|
||||
@ -1351,7 +1353,7 @@ OMPI_DECLSPEC int MPI_Error_class(int errorcode, int *errorclass);
|
||||
OMPI_DECLSPEC int MPI_Error_string(int errorcode, char *string, int *resultlen);
|
||||
OMPI_DECLSPEC int MPI_Exscan(const void *sendbuf, void *recvbuf, int count,
|
||||
MPI_Datatype datatype, MPI_Op op, MPI_Comm comm);
|
||||
OMPI_DECLSPEC int MPI_Fetch_and_op(void *origin_addr, void *result_addr, MPI_Datatype datatype,
|
||||
OMPI_DECLSPEC int MPI_Fetch_and_op(const void *origin_addr, void *result_addr, MPI_Datatype datatype,
|
||||
int target_rank, MPI_Aint target_disp, MPI_Op op, MPI_Win win);
|
||||
OMPI_DECLSPEC int MPI_Iexscan(const void *sendbuf, void *recvbuf, int count,
|
||||
MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request);
|
||||
@ -1627,7 +1629,7 @@ OMPI_DECLSPEC int MPI_Put(const void *origin_addr, int origin_count, MPI_Dataty
|
||||
int target_rank, MPI_Aint target_disp, int target_count,
|
||||
MPI_Datatype target_datatype, MPI_Win win);
|
||||
OMPI_DECLSPEC int MPI_Query_thread(int *provided);
|
||||
OMPI_DECLSPEC int MPI_Raccumulate(void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
|
||||
OMPI_DECLSPEC int MPI_Raccumulate(const 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_Op op, MPI_Win win, MPI_Request *request);
|
||||
OMPI_DECLSPEC int MPI_Recv_init(void *buf, int count, MPI_Datatype datatype, int source,
|
||||
@ -1851,7 +1853,7 @@ OMPI_DECLSPEC int MPI_Win_create_keyval(MPI_Win_copy_attr_function *win_copy_at
|
||||
MPI_Win_delete_attr_function *win_delete_attr_fn,
|
||||
int *win_keyval, void *extra_state);
|
||||
OMPI_DECLSPEC int MPI_Win_delete_attr(MPI_Win win, int win_keyval);
|
||||
OMPI_DECLSPEC int MPI_Win_detach(MPI_Win win, void *base);
|
||||
OMPI_DECLSPEC int MPI_Win_detach(MPI_Win win, const void *base);
|
||||
OMPI_DECLSPEC MPI_Win MPI_Win_f2c(MPI_Fint win);
|
||||
OMPI_DECLSPEC int MPI_Win_fence(int assert, MPI_Win win);
|
||||
OMPI_DECLSPEC int MPI_Win_flush(int rank, MPI_Win win);
|
||||
@ -2033,7 +2035,7 @@ OMPI_DECLSPEC int PMPI_Comm_spawn_multiple(int count, char *array_of_commands[]
|
||||
OMPI_DECLSPEC int PMPI_Comm_split(MPI_Comm comm, int color, int key, MPI_Comm *newcomm);
|
||||
OMPI_DECLSPEC int PMPI_Comm_split_type(MPI_Comm comm, int split_type, int key, MPI_Info info, MPI_Comm *newcomm);
|
||||
OMPI_DECLSPEC int PMPI_Comm_test_inter(MPI_Comm comm, int *flag);
|
||||
OMPI_DECLSPEC int PMPI_Compare_and_swap(void *origin_addr, void *compare_addr,
|
||||
OMPI_DECLSPEC int PMPI_Compare_and_swap(const void *origin_addr, const void *compare_addr,
|
||||
void *result_addr, MPI_Datatype datatype, int target_rank,
|
||||
MPI_Aint target_disp, MPI_Win win);
|
||||
OMPI_DECLSPEC int PMPI_Dims_create(int nnodes, int ndims, int dims[]);
|
||||
@ -2051,7 +2053,7 @@ OMPI_DECLSPEC int PMPI_Error_class(int errorcode, int *errorclass);
|
||||
OMPI_DECLSPEC int PMPI_Error_string(int errorcode, char *string, int *resultlen);
|
||||
OMPI_DECLSPEC int PMPI_Exscan(const void *sendbuf, void *recvbuf, int count,
|
||||
MPI_Datatype datatype, MPI_Op op, MPI_Comm comm);
|
||||
OMPI_DECLSPEC int PMPI_Fetch_and_op(void *origin_addr, void *result_addr, MPI_Datatype datatype,
|
||||
OMPI_DECLSPEC int PMPI_Fetch_and_op(const void *origin_addr, void *result_addr, MPI_Datatype datatype,
|
||||
int target_rank, MPI_Aint target_disp, MPI_Op op, MPI_Win win);
|
||||
OMPI_DECLSPEC int PMPI_Iexscan(const void *sendbuf, void *recvbuf, int count,
|
||||
MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request);
|
||||
@ -2329,7 +2331,7 @@ OMPI_DECLSPEC int PMPI_Put(const void *origin_addr, int origin_count, MPI_Datat
|
||||
int target_rank, MPI_Aint target_disp, int target_count,
|
||||
MPI_Datatype target_datatype, MPI_Win win);
|
||||
OMPI_DECLSPEC int PMPI_Query_thread(int *provided);
|
||||
OMPI_DECLSPEC int PMPI_Raccumulate(void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
|
||||
OMPI_DECLSPEC int PMPI_Raccumulate(const 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_Op op, MPI_Win win, MPI_Request *request);
|
||||
OMPI_DECLSPEC int PMPI_Recv_init(void *buf, int count, MPI_Datatype datatype, int source,
|
||||
@ -2553,7 +2555,7 @@ OMPI_DECLSPEC int PMPI_Win_create_keyval(MPI_Win_copy_attr_function *win_copy_a
|
||||
MPI_Win_delete_attr_function *win_delete_attr_fn,
|
||||
int *win_keyval, void *extra_state);
|
||||
OMPI_DECLSPEC int PMPI_Win_delete_attr(MPI_Win win, int win_keyval);
|
||||
OMPI_DECLSPEC int PMPI_Win_detach(MPI_Win win, void *base);
|
||||
OMPI_DECLSPEC int PMPI_Win_detach(MPI_Win win, const void *base);
|
||||
OMPI_DECLSPEC MPI_Win PMPI_Win_f2c(MPI_Fint win);
|
||||
OMPI_DECLSPEC int PMPI_Win_fence(int assert, MPI_Win win);
|
||||
OMPI_DECLSPEC int PMPI_Win_flush(int rank, MPI_Win win);
|
||||
|
@ -134,7 +134,7 @@ int ompi_osc_base_process_op (void *outbuf, void *inbuf, size_t inbuflen,
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
int ompi_osc_base_sndrcv_op (void *origin, int32_t origin_count,
|
||||
int ompi_osc_base_sndrcv_op (const void *origin, int32_t origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
void *target, int32_t target_count,
|
||||
struct ompi_datatype_t *target_dt,
|
||||
@ -152,7 +152,7 @@ int ompi_osc_base_sndrcv_op (void *origin, int32_t origin_count,
|
||||
bool done;
|
||||
|
||||
if (ompi_datatype_is_predefined(origin_dt) && origin_dt == target_dt) {
|
||||
ompi_op_reduce(op, origin, target, origin_count, origin_dt);
|
||||
ompi_op_reduce(op, (void *)origin, target, origin_count, origin_dt);
|
||||
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
@ -7,6 +7,8 @@
|
||||
* University of Stuttgart. All rights reserved.
|
||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -117,7 +119,7 @@ OMPI_DECLSPEC int ompi_osc_base_process_op(void *outbuf,
|
||||
int count,
|
||||
ompi_op_t *op);
|
||||
|
||||
OMPI_DECLSPEC int ompi_osc_base_sndrcv_op(void *origin,
|
||||
OMPI_DECLSPEC int ompi_osc_base_sndrcv_op(const void *origin,
|
||||
int32_t origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
void *target,
|
||||
|
@ -11,6 +11,8 @@
|
||||
* Copyright (c) 2007-2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2010 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -181,7 +183,7 @@ typedef int (*ompi_osc_base_module_win_shared_query_fn_t)(struct ompi_win_t *win
|
||||
size_t *size, int *disp_unit, void *baseptr);
|
||||
|
||||
typedef int (*ompi_osc_base_module_win_attach_fn_t)(struct ompi_win_t *win, void *base, size_t size);
|
||||
typedef int (*ompi_osc_base_module_win_detach_fn_t)(struct ompi_win_t *win, void *base);
|
||||
typedef int (*ompi_osc_base_module_win_detach_fn_t)(struct ompi_win_t *win, const void *base);
|
||||
|
||||
/**
|
||||
* Free resources associated with win
|
||||
@ -231,15 +233,15 @@ typedef int (*ompi_osc_base_module_accumulate_fn_t)(void *origin_addr,
|
||||
struct ompi_op_t *op,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
typedef int (*ompi_osc_base_module_compare_and_swap_fn_t)(void *origin_addr,
|
||||
void *compare_addr,
|
||||
typedef int (*ompi_osc_base_module_compare_and_swap_fn_t)(const void *origin_addr,
|
||||
const void *compare_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
OPAL_PTRDIFF_TYPE target_disp,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
typedef int (*ompi_osc_base_module_fetch_and_op_fn_t)(void *origin_addr,
|
||||
typedef int (*ompi_osc_base_module_fetch_and_op_fn_t)(const void *origin_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
@ -247,7 +249,7 @@ typedef int (*ompi_osc_base_module_fetch_and_op_fn_t)(void *origin_addr,
|
||||
struct ompi_op_t *op,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
typedef int (*ompi_osc_base_module_get_accumulate_fn_t)(void *origin_addr,
|
||||
typedef int (*ompi_osc_base_module_get_accumulate_fn_t)(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_datatype,
|
||||
void *result_addr,
|
||||
@ -281,7 +283,7 @@ typedef int (*ompi_osc_base_module_rget_fn_t)(void *origin_addr,
|
||||
struct ompi_request_t **request);
|
||||
|
||||
|
||||
typedef int (*ompi_osc_base_module_raccumulate_fn_t)(void *origin_addr,
|
||||
typedef int (*ompi_osc_base_module_raccumulate_fn_t)(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
int target,
|
||||
|
@ -3,6 +3,8 @@
|
||||
* Copyright (c) 2011-2013 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -116,7 +118,7 @@ get_displacement(ompi_osc_portals4_module_t *module,
|
||||
|
||||
|
||||
int ompi_osc_portals4_attach(struct ompi_win_t *win, void *base, size_t len);
|
||||
int ompi_osc_portals4_detach(struct ompi_win_t *win, void *base);
|
||||
int ompi_osc_portals4_detach(struct ompi_win_t *win, const void *base);
|
||||
|
||||
int ompi_osc_portals4_free(struct ompi_win_t *win);
|
||||
|
||||
@ -148,15 +150,15 @@ int ompi_osc_portals4_accumulate(void *origin_addr,
|
||||
struct ompi_op_t *op,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_portals4_compare_and_swap(void *origin_addr,
|
||||
void *compare_addr,
|
||||
int ompi_osc_portals4_compare_and_swap(const void *origin_addr,
|
||||
const void *compare_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
OPAL_PTRDIFF_TYPE target_disp,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_portals4_fetch_and_op(void *origin_addr,
|
||||
int ompi_osc_portals4_fetch_and_op(const void *origin_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
@ -164,7 +166,7 @@ int ompi_osc_portals4_fetch_and_op(void *origin_addr,
|
||||
struct ompi_op_t *op,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_portals4_get_accumulate(void *origin_addr,
|
||||
int ompi_osc_portals4_get_accumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_datatype,
|
||||
void *result_addr,
|
||||
@ -197,7 +199,7 @@ int ompi_osc_portals4_rget(void *origin_addr,
|
||||
struct ompi_win_t *win,
|
||||
struct ompi_request_t **request);
|
||||
|
||||
int ompi_osc_portals4_raccumulate(void *origin_addr,
|
||||
int ompi_osc_portals4_raccumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
int target,
|
||||
|
@ -3,6 +3,8 @@
|
||||
* Copyright (c) 2014 The University of Tennessee and The University
|
||||
* of Tennessee Research Foundation. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -312,7 +314,7 @@ ompi_osc_portals4_rget(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_portals4_raccumulate(void *origin_addr,
|
||||
ompi_osc_portals4_raccumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
int target,
|
||||
@ -785,7 +787,7 @@ ompi_osc_portals4_accumulate(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_portals4_get_accumulate(void *origin_addr,
|
||||
ompi_osc_portals4_get_accumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
void *result_addr,
|
||||
@ -937,8 +939,8 @@ ompi_osc_portals4_get_accumulate(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_portals4_compare_and_swap(void *origin_addr,
|
||||
void *compare_addr,
|
||||
ompi_osc_portals4_compare_and_swap(const void *origin_addr,
|
||||
const void *compare_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
@ -1000,7 +1002,7 @@ ompi_osc_portals4_compare_and_swap(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_portals4_fetch_and_op(void *origin_addr,
|
||||
ompi_osc_portals4_fetch_and_op(const void *origin_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
|
@ -3,6 +3,8 @@
|
||||
* Copyright (c) 2011-2013 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -583,7 +585,7 @@ ompi_osc_portals4_attach(struct ompi_win_t *win, void *base, size_t len)
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_portals4_detach(struct ompi_win_t *win, void *base)
|
||||
ompi_osc_portals4_detach(struct ompi_win_t *win, const void *base)
|
||||
{
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
@ -12,6 +12,8 @@
|
||||
* reserved.
|
||||
* Copyright (c) 2010 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2012-2013 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -246,7 +248,7 @@ OBJ_CLASS_DECLARATION(ompi_osc_pt2pt_pending_t);
|
||||
extern bool ompi_osc_pt2pt_no_locks;
|
||||
|
||||
int ompi_osc_pt2pt_attach(struct ompi_win_t *win, void *base, size_t len);
|
||||
int ompi_osc_pt2pt_detach(struct ompi_win_t *win, void *base);
|
||||
int ompi_osc_pt2pt_detach(struct ompi_win_t *win, const void *base);
|
||||
|
||||
int ompi_osc_pt2pt_free(struct ompi_win_t *win);
|
||||
|
||||
@ -278,15 +280,15 @@ int ompi_osc_pt2pt_get(void *origin_addr,
|
||||
struct ompi_datatype_t *target_dt,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_pt2pt_compare_and_swap(void *origin_addr,
|
||||
void *compare_addr,
|
||||
int ompi_osc_pt2pt_compare_and_swap(const void *origin_addr,
|
||||
const void *compare_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
OPAL_PTRDIFF_TYPE target_disp,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_pt2pt_fetch_and_op(void *origin_addr,
|
||||
int ompi_osc_pt2pt_fetch_and_op(const void *origin_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
@ -294,7 +296,7 @@ int ompi_osc_pt2pt_fetch_and_op(void *origin_addr,
|
||||
struct ompi_op_t *op,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_pt2pt_get_accumulate(void *origin_addr,
|
||||
int ompi_osc_pt2pt_get_accumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_datatype,
|
||||
void *result_addr,
|
||||
@ -327,7 +329,7 @@ int ompi_osc_pt2pt_rget(void *origin_addr,
|
||||
struct ompi_win_t *win,
|
||||
struct ompi_request_t **request);
|
||||
|
||||
int ompi_osc_pt2pt_raccumulate(void *origin_addr,
|
||||
int ompi_osc_pt2pt_raccumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
int target,
|
||||
@ -405,7 +407,7 @@ int ompi_osc_pt2pt_component_irecv(ompi_osc_pt2pt_module_t *module,
|
||||
struct ompi_communicator_t *comm);
|
||||
|
||||
int ompi_osc_pt2pt_component_isend(ompi_osc_pt2pt_module_t *module,
|
||||
void *buf,
|
||||
const void *buf,
|
||||
size_t count,
|
||||
struct ompi_datatype_t *datatype,
|
||||
int dest,
|
||||
@ -565,7 +567,7 @@ static inline void osc_pt2pt_copy_on_recv (void *target, void *source, size_t so
|
||||
* buffer. The copy is done with a convertor generated from proc,
|
||||
* datatype, and count.
|
||||
*/
|
||||
static inline void osc_pt2pt_copy_for_send (void *target, size_t target_len, void *source, ompi_proc_t *proc,
|
||||
static inline void osc_pt2pt_copy_for_send (void *target, size_t target_len, const void *source, ompi_proc_t *proc,
|
||||
int count, ompi_datatype_t *datatype)
|
||||
{
|
||||
opal_convertor_t convertor;
|
||||
|
@ -150,7 +150,7 @@ static inline int ompi_osc_pt2pt_get_self (void *target, int target_count, ompi_
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
static inline int ompi_osc_pt2pt_cas_self (void *source, void *compare, void *result, ompi_datatype_t *datatype,
|
||||
static inline int ompi_osc_pt2pt_cas_self (const void *source, const void *compare, void *result, ompi_datatype_t *datatype,
|
||||
OPAL_PTRDIFF_TYPE target_disp, ompi_osc_pt2pt_module_t *module)
|
||||
{
|
||||
void *target = (unsigned char*) module->baseptr +
|
||||
@ -182,7 +182,7 @@ static inline int ompi_osc_pt2pt_cas_self (void *source, void *compare, void *re
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
static inline int ompi_osc_pt2pt_acc_self (void *source, int source_count, ompi_datatype_t *source_datatype,
|
||||
static inline int ompi_osc_pt2pt_acc_self (const void *source, int source_count, ompi_datatype_t *source_datatype,
|
||||
OPAL_PTRDIFF_TYPE target_disp, int target_count, ompi_datatype_t *target_datatype,
|
||||
ompi_op_t *op, ompi_osc_pt2pt_module_t *module, ompi_osc_pt2pt_request_t *request)
|
||||
{
|
||||
@ -208,7 +208,7 @@ static inline int ompi_osc_pt2pt_acc_self (void *source, int source_count, ompi_
|
||||
if (&ompi_mpi_op_replace.op != op) {
|
||||
ret = ompi_osc_base_sndrcv_op (source, source_count, source_datatype, target, target_count, target_datatype, op);
|
||||
} else {
|
||||
ret = ompi_datatype_sndrcv (source, source_count, source_datatype, target, target_count, target_datatype);
|
||||
ret = ompi_datatype_sndrcv ((void *)source, source_count, source_datatype, target, target_count, target_datatype);
|
||||
}
|
||||
|
||||
ompi_osc_pt2pt_accumulate_unlock (module);
|
||||
@ -226,7 +226,7 @@ static inline int ompi_osc_pt2pt_acc_self (void *source, int source_count, ompi_
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
static inline int ompi_osc_pt2pt_gacc_self (void *source, int source_count, ompi_datatype_t *source_datatype,
|
||||
static inline int ompi_osc_pt2pt_gacc_self (const void *source, int source_count, ompi_datatype_t *source_datatype,
|
||||
void *result, int result_count, ompi_datatype_t *result_datatype,
|
||||
OPAL_PTRDIFF_TYPE target_disp, int target_count, ompi_datatype_t *target_datatype,
|
||||
ompi_op_t *op, ompi_osc_pt2pt_module_t *module, ompi_osc_pt2pt_request_t *request)
|
||||
@ -264,7 +264,7 @@ static inline int ompi_osc_pt2pt_gacc_self (void *source, int source_count, ompi
|
||||
if (&ompi_mpi_op_replace.op != op) {
|
||||
ret = ompi_osc_base_sndrcv_op (source, source_count, source_datatype, target, target_count, target_datatype, op);
|
||||
} else {
|
||||
ret = ompi_datatype_sndrcv (source, source_count, source_datatype, target, target_count, target_datatype);
|
||||
ret = ompi_datatype_sndrcv ((void *)source, source_count, source_datatype, target, target_count, target_datatype);
|
||||
}
|
||||
}
|
||||
|
||||
@ -463,7 +463,7 @@ ompi_osc_pt2pt_put(void *origin_addr, int origin_count,
|
||||
|
||||
|
||||
static int
|
||||
ompi_osc_pt2pt_accumulate_w_req (void *origin_addr, int origin_count,
|
||||
ompi_osc_pt2pt_accumulate_w_req (const void *origin_addr, int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
int target, OPAL_PTRDIFF_TYPE target_disp,
|
||||
int target_count,
|
||||
@ -647,7 +647,7 @@ ompi_osc_pt2pt_accumulate(void *origin_addr, int origin_count,
|
||||
target_dt, op, win, NULL);
|
||||
}
|
||||
|
||||
int ompi_osc_pt2pt_compare_and_swap (void *origin_addr, void *compare_addr,
|
||||
int ompi_osc_pt2pt_compare_and_swap (const void *origin_addr, const void *compare_addr,
|
||||
void *result_addr, struct ompi_datatype_t *dt,
|
||||
int target, OPAL_PTRDIFF_TYPE target_disp,
|
||||
struct ompi_win_t *win)
|
||||
@ -737,7 +737,7 @@ int ompi_osc_pt2pt_compare_and_swap (void *origin_addr, void *compare_addr,
|
||||
}
|
||||
|
||||
|
||||
int ompi_osc_pt2pt_fetch_and_op(void *origin_addr, void *result_addr,
|
||||
int ompi_osc_pt2pt_fetch_and_op(const void *origin_addr, void *result_addr,
|
||||
struct ompi_datatype_t *dt, int target,
|
||||
OPAL_PTRDIFF_TYPE target_disp, struct ompi_op_t *op,
|
||||
struct ompi_win_t *win)
|
||||
@ -956,7 +956,7 @@ int ompi_osc_pt2pt_get (void *origin_addr, int origin_count, struct ompi_datatyp
|
||||
target_count, target_dt, win, true, &request);
|
||||
}
|
||||
|
||||
int ompi_osc_pt2pt_raccumulate(void *origin_addr, int origin_count,
|
||||
int ompi_osc_pt2pt_raccumulate(const void *origin_addr, int origin_count,
|
||||
struct ompi_datatype_t *origin_dt, int target,
|
||||
OPAL_PTRDIFF_TYPE target_disp, int target_count,
|
||||
struct ompi_datatype_t *target_dt, struct ompi_op_t *op,
|
||||
@ -1001,7 +1001,7 @@ int ompi_osc_pt2pt_raccumulate(void *origin_addr, int origin_count,
|
||||
|
||||
|
||||
static inline
|
||||
int ompi_osc_pt2pt_rget_accumulate_internal (void *origin_addr, int origin_count,
|
||||
int ompi_osc_pt2pt_rget_accumulate_internal (const void *origin_addr, int origin_count,
|
||||
struct ompi_datatype_t *origin_datatype,
|
||||
void *result_addr, int result_count,
|
||||
struct ompi_datatype_t *result_datatype,
|
||||
@ -1188,7 +1188,7 @@ int ompi_osc_pt2pt_rget_accumulate_internal (void *origin_addr, int origin_count
|
||||
return ret;
|
||||
}
|
||||
|
||||
int ompi_osc_pt2pt_get_accumulate(void *origin_addr, int origin_count,
|
||||
int ompi_osc_pt2pt_get_accumulate(const void *origin_addr, int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
void *result_addr, int result_count,
|
||||
struct ompi_datatype_t *result_dt,
|
||||
|
@ -1724,7 +1724,7 @@ isend_completion_cb(ompi_request_t *request)
|
||||
}
|
||||
|
||||
|
||||
int ompi_osc_pt2pt_component_isend (ompi_osc_pt2pt_module_t *module, void *buf,
|
||||
int ompi_osc_pt2pt_component_isend (ompi_osc_pt2pt_module_t *module, const void *buf,
|
||||
size_t count, struct ompi_datatype_t *datatype,
|
||||
int dest, int tag, struct ompi_communicator_t *comm)
|
||||
{
|
||||
@ -1732,7 +1732,7 @@ int ompi_osc_pt2pt_component_isend (ompi_osc_pt2pt_module_t *module, void *buf,
|
||||
isend_completion_cb, module);
|
||||
}
|
||||
|
||||
int ompi_osc_pt2pt_isend_w_cb (void *ptr, int count, ompi_datatype_t *datatype, int target, int tag,
|
||||
int ompi_osc_pt2pt_isend_w_cb (const void *ptr, int count, ompi_datatype_t *datatype, int target, int tag,
|
||||
ompi_communicator_t *comm, ompi_request_complete_fn_t cb, void *ctx)
|
||||
{
|
||||
ompi_request_t *request;
|
||||
@ -1742,7 +1742,7 @@ int ompi_osc_pt2pt_isend_w_cb (void *ptr, int count, ompi_datatype_t *datatype,
|
||||
"osc pt2pt: ompi_osc_pt2pt_isend_w_cb sending %d bytes to %d with tag %d",
|
||||
count, target, tag));
|
||||
|
||||
ret = MCA_PML_CALL(isend_init(ptr, count, datatype, target, tag,
|
||||
ret = MCA_PML_CALL(isend_init((void *)ptr, count, datatype, target, tag,
|
||||
MCA_PML_BASE_SEND_STANDARD, comm, &request));
|
||||
if (OMPI_SUCCESS != ret) {
|
||||
OPAL_OUTPUT_VERBOSE((50, ompi_osc_base_framework.framework_output,
|
||||
|
@ -11,6 +11,8 @@
|
||||
* Copyright (c) 2012 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2014 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -66,7 +68,7 @@ int ompi_osc_pt2pt_control_send_unbuffered (ompi_osc_pt2pt_module_t *module,
|
||||
* be called with the associated request. The context specified in ctx will be stored in
|
||||
* the req_completion_cb_data member of the ompi_request_t for use by the callback.
|
||||
*/
|
||||
int ompi_osc_pt2pt_isend_w_cb (void *ptr, int count, ompi_datatype_t *datatype, int target, int tag,
|
||||
int ompi_osc_pt2pt_isend_w_cb (const void *ptr, int count, ompi_datatype_t *datatype, int target, int tag,
|
||||
ompi_communicator_t *comm, ompi_request_complete_fn_t cb, void *ctx);
|
||||
|
||||
/**
|
||||
|
@ -11,6 +11,8 @@
|
||||
* Copyright (c) 2007-2014 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2012-2013 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -38,7 +40,7 @@ ompi_osc_pt2pt_attach(struct ompi_win_t *win, void *base, size_t len)
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_pt2pt_detach(struct ompi_win_t *win, void *base)
|
||||
ompi_osc_pt2pt_detach(struct ompi_win_t *win, const void *base)
|
||||
{
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
@ -3,6 +3,8 @@
|
||||
* Copyright (c) 2012 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2014-2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -22,7 +24,7 @@ struct ompi_osc_pt2pt_request_t {
|
||||
ompi_request_t super;
|
||||
|
||||
int type;
|
||||
void *origin_addr;
|
||||
const void *origin_addr;
|
||||
int origin_count;
|
||||
struct ompi_datatype_t *origin_dt;
|
||||
ompi_osc_pt2pt_module_t* module;
|
||||
|
@ -87,7 +87,7 @@ typedef struct ompi_osc_sm_module_t ompi_osc_sm_module_t;
|
||||
int ompi_osc_sm_shared_query(struct ompi_win_t *win, int rank, size_t *size, int *disp_unit, void *baseptr);
|
||||
|
||||
int ompi_osc_sm_attach(struct ompi_win_t *win, void *base, size_t len);
|
||||
int ompi_osc_sm_detach(struct ompi_win_t *win, void *base);
|
||||
int ompi_osc_sm_detach(struct ompi_win_t *win, const void *base);
|
||||
|
||||
int ompi_osc_sm_free(struct ompi_win_t *win);
|
||||
|
||||
@ -119,15 +119,15 @@ int ompi_osc_sm_accumulate(void *origin_addr,
|
||||
struct ompi_op_t *op,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_sm_compare_and_swap(void *origin_addr,
|
||||
void *compare_addr,
|
||||
int ompi_osc_sm_compare_and_swap(const void *origin_addr,
|
||||
const void *compare_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
OPAL_PTRDIFF_TYPE target_disp,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_sm_fetch_and_op(void *origin_addr,
|
||||
int ompi_osc_sm_fetch_and_op(const void *origin_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
@ -135,7 +135,7 @@ int ompi_osc_sm_fetch_and_op(void *origin_addr,
|
||||
struct ompi_op_t *op,
|
||||
struct ompi_win_t *win);
|
||||
|
||||
int ompi_osc_sm_get_accumulate(void *origin_addr,
|
||||
int ompi_osc_sm_get_accumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_datatype,
|
||||
void *result_addr,
|
||||
@ -168,7 +168,7 @@ int ompi_osc_sm_rget(void *origin_addr,
|
||||
struct ompi_win_t *win,
|
||||
struct ompi_request_t **request);
|
||||
|
||||
int ompi_osc_sm_raccumulate(void *origin_addr,
|
||||
int ompi_osc_sm_raccumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
int target,
|
||||
|
@ -3,6 +3,8 @@
|
||||
* Copyright (c) 2011 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2014 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -99,7 +101,7 @@ ompi_osc_sm_rget(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_sm_raccumulate(void *origin_addr,
|
||||
ompi_osc_sm_raccumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
int target,
|
||||
@ -127,7 +129,7 @@ ompi_osc_sm_raccumulate(void *origin_addr,
|
||||
|
||||
opal_atomic_lock(&module->node_states[target].accumulate_lock);
|
||||
if (op == &ompi_mpi_op_replace.op) {
|
||||
ret = ompi_datatype_sndrcv(origin_addr, origin_count, origin_dt,
|
||||
ret = ompi_datatype_sndrcv((void *)origin_addr, origin_count, origin_dt,
|
||||
remote_address, target_count, target_dt);
|
||||
} else {
|
||||
ret = ompi_osc_base_sndrcv_op(origin_addr, origin_count, origin_dt,
|
||||
@ -307,7 +309,7 @@ ompi_osc_sm_accumulate(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_sm_get_accumulate(void *origin_addr,
|
||||
ompi_osc_sm_get_accumulate(const void *origin_addr,
|
||||
int origin_count,
|
||||
struct ompi_datatype_t *origin_dt,
|
||||
void *result_addr,
|
||||
@ -342,7 +344,7 @@ ompi_osc_sm_get_accumulate(void *origin_addr,
|
||||
if (OMPI_SUCCESS != ret || op == &ompi_mpi_op_no_op.op) goto done;
|
||||
|
||||
if (op == &ompi_mpi_op_replace.op) {
|
||||
ret = ompi_datatype_sndrcv(origin_addr, origin_count, origin_dt,
|
||||
ret = ompi_datatype_sndrcv((void *)origin_addr, origin_count, origin_dt,
|
||||
remote_address, target_count, target_dt);
|
||||
} else {
|
||||
ret = ompi_osc_base_sndrcv_op(origin_addr, origin_count, origin_dt,
|
||||
@ -358,8 +360,8 @@ ompi_osc_sm_get_accumulate(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_sm_compare_and_swap(void *origin_addr,
|
||||
void *compare_addr,
|
||||
ompi_osc_sm_compare_and_swap(const void *origin_addr,
|
||||
const void *compare_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
@ -398,7 +400,7 @@ ompi_osc_sm_compare_and_swap(void *origin_addr,
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_sm_fetch_and_op(void *origin_addr,
|
||||
ompi_osc_sm_fetch_and_op(const void *origin_addr,
|
||||
void *result_addr,
|
||||
struct ompi_datatype_t *dt,
|
||||
int target,
|
||||
@ -429,7 +431,7 @@ ompi_osc_sm_fetch_and_op(void *origin_addr,
|
||||
if (op == &ompi_mpi_op_replace.op) {
|
||||
ompi_datatype_copy_content_same_ddt(dt, 1, (char*) remote_address, (char*) origin_addr);
|
||||
} else {
|
||||
ompi_op_reduce(op, origin_addr, remote_address, 1, dt);
|
||||
ompi_op_reduce(op, (void *)origin_addr, remote_address, 1, dt);
|
||||
}
|
||||
|
||||
done:
|
||||
|
@ -4,7 +4,9 @@
|
||||
* Copyright (c) 2014-2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2014 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -424,7 +426,7 @@ ompi_osc_sm_attach(struct ompi_win_t *win, void *base, size_t len)
|
||||
|
||||
|
||||
int
|
||||
ompi_osc_sm_detach(struct ompi_win_t *win, void *base)
|
||||
ompi_osc_sm_detach(struct ompi_win_t *win, const void *base)
|
||||
{
|
||||
ompi_osc_sm_module_t *module =
|
||||
(ompi_osc_sm_module_t*) win->w_osc_module;
|
||||
|
@ -11,6 +11,8 @@
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2006 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2011 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -39,7 +41,7 @@
|
||||
static const char FUNC_NAME[] = "MPI_Compare_and_swap";
|
||||
|
||||
|
||||
int MPI_Compare_and_swap(void *origin_addr, void *compare_addr, void *result_addr,
|
||||
int MPI_Compare_and_swap(const void *origin_addr, const void *compare_addr, void *result_addr,
|
||||
MPI_Datatype datatype, int target_rank, MPI_Aint target_disp, MPI_Win win)
|
||||
{
|
||||
int rc;
|
||||
|
@ -11,6 +11,8 @@
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2006 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2011 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -39,7 +41,7 @@
|
||||
static const char FUNC_NAME[] = "MPI_Fetch_and_op";
|
||||
|
||||
|
||||
int MPI_Fetch_and_op(void *origin_addr, void *result_addr, MPI_Datatype datatype,
|
||||
int MPI_Fetch_and_op(const void *origin_addr, void *result_addr, MPI_Datatype datatype,
|
||||
int target_rank, MPI_Aint target_disp, MPI_Op op, MPI_Win win)
|
||||
{
|
||||
int rc;
|
||||
|
@ -14,6 +14,8 @@
|
||||
* Copyright (c) 2011 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2014 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -43,7 +45,7 @@
|
||||
|
||||
static const char FUNC_NAME[] = "MPI_Raccumulate";
|
||||
|
||||
int MPI_Raccumulate(void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
|
||||
int MPI_Raccumulate(const 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_Op op, MPI_Win win, MPI_Request *request)
|
||||
{
|
||||
|
@ -10,6 +10,8 @@
|
||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2006 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -38,7 +40,7 @@
|
||||
|
||||
static const char FUNC_NAME[] = "MPI_Win_detach";
|
||||
|
||||
int MPI_Win_detach(MPI_Win win, void *base)
|
||||
int MPI_Win_detach(MPI_Win win, const void *base)
|
||||
{
|
||||
int ret = MPI_SUCCESS;
|
||||
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user