1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 #ifndef OMPI_CRCP_BASE_H
22 #define OMPI_CRCP_BASE_H
23
24 #include "ompi_config.h"
25
26 #include "opal/mca/base/base.h"
27 #include "ompi/constants.h"
28
29 #include "ompi/mca/crcp/crcp.h"
30
31
32
33
34
35 BEGIN_C_DECLS
36
37
38
39
40
41
42
43
44
45 OMPI_DECLSPEC int ompi_crcp_base_select(void);
46
47
48
49
50 OMPI_DECLSPEC int ompi_crcp_base_quiesce_start(MPI_Info *info);
51 OMPI_DECLSPEC int ompi_crcp_base_quiesce_end(MPI_Info *info);
52
53
54
55
56
57
58 int ompi_crcp_base_none_open(void);
59 int ompi_crcp_base_none_close(void);
60 int ompi_crcp_base_none_query(mca_base_module_t **module, int *priority);
61
62 int ompi_crcp_base_module_init(void);
63 int ompi_crcp_base_module_finalize(void);
64
65
66 int ompi_crcp_base_none_quiesce_start(MPI_Info *info);
67 int ompi_crcp_base_none_quiesce_end(MPI_Info *info);
68
69
70 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_enable( bool enable, ompi_crcp_base_pml_state_t* );
71
72 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_add_comm( struct ompi_communicator_t* comm, ompi_crcp_base_pml_state_t* );
73 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_del_comm( struct ompi_communicator_t* comm, ompi_crcp_base_pml_state_t* );
74
75 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_add_procs( struct ompi_proc_t **procs, size_t nprocs, ompi_crcp_base_pml_state_t* );
76 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_del_procs( struct ompi_proc_t **procs, size_t nprocs, ompi_crcp_base_pml_state_t* );
77
78 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_progress(ompi_crcp_base_pml_state_t*);
79
80 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_iprobe(int dst, int tag, struct ompi_communicator_t* comm, int *matched, ompi_status_public_t* status, ompi_crcp_base_pml_state_t* );
81
82 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_probe( int dst, int tag, struct ompi_communicator_t* comm, ompi_status_public_t* status, ompi_crcp_base_pml_state_t* );
83
84 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_isend_init( void *buf, size_t count, ompi_datatype_t *datatype, int dst, int tag,
85 mca_pml_base_send_mode_t mode, struct ompi_communicator_t* comm, struct ompi_request_t **request, ompi_crcp_base_pml_state_t* );
86
87 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_isend( void *buf, size_t count, ompi_datatype_t *datatype, int dst, int tag,
88 mca_pml_base_send_mode_t mode, struct ompi_communicator_t* comm, struct ompi_request_t **request, ompi_crcp_base_pml_state_t* );
89
90 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_send( void *buf, size_t count, ompi_datatype_t *datatype, int dst, int tag,
91 mca_pml_base_send_mode_t mode, struct ompi_communicator_t* comm, ompi_crcp_base_pml_state_t* );
92
93 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_irecv_init( void *buf, size_t count, ompi_datatype_t *datatype, int src, int tag,
94 struct ompi_communicator_t* comm, struct ompi_request_t **request, ompi_crcp_base_pml_state_t*);
95
96 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_irecv( void *buf, size_t count, ompi_datatype_t *datatype, int src, int tag,
97 struct ompi_communicator_t* comm, struct ompi_request_t **request, ompi_crcp_base_pml_state_t* );
98
99 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_recv( void *buf, size_t count, ompi_datatype_t *datatype, int src, int tag,
100 struct ompi_communicator_t* comm, ompi_status_public_t* status, ompi_crcp_base_pml_state_t*);
101
102 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_dump( struct ompi_communicator_t* comm, int verbose, ompi_crcp_base_pml_state_t* );
103
104 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_start( size_t count, ompi_request_t** requests, ompi_crcp_base_pml_state_t* );
105
106 ompi_crcp_base_pml_state_t* ompi_crcp_base_none_pml_ft_event(int state, ompi_crcp_base_pml_state_t*);
107
108
109 int ompi_crcp_base_none_request_complete( struct ompi_request_t *request );
110
111
112 ompi_crcp_base_btl_state_t*
113 ompi_crcp_base_none_btl_add_procs( struct mca_btl_base_module_t* btl,
114 size_t nprocs,
115 struct ompi_proc_t** procs,
116 struct mca_btl_base_endpoint_t** endpoints,
117 struct opal_bitmap_t* reachable,
118 ompi_crcp_base_btl_state_t* );
119
120 ompi_crcp_base_btl_state_t*
121 ompi_crcp_base_none_btl_del_procs( struct mca_btl_base_module_t* btl,
122 size_t nprocs,
123 struct ompi_proc_t** procs,
124 struct mca_btl_base_endpoint_t**,
125 ompi_crcp_base_btl_state_t*);
126
127 ompi_crcp_base_btl_state_t*
128 ompi_crcp_base_none_btl_register( struct mca_btl_base_module_t* btl,
129 mca_btl_base_tag_t tag,
130 mca_btl_base_module_recv_cb_fn_t cbfunc,
131 void* cbdata,
132 ompi_crcp_base_btl_state_t*);
133
134 ompi_crcp_base_btl_state_t*
135 ompi_crcp_base_none_btl_finalize( struct mca_btl_base_module_t* btl,
136 ompi_crcp_base_btl_state_t*);
137
138 ompi_crcp_base_btl_state_t*
139 ompi_crcp_base_none_btl_alloc( struct mca_btl_base_module_t* btl,
140 size_t size,
141 ompi_crcp_base_btl_state_t*);
142
143 ompi_crcp_base_btl_state_t*
144 ompi_crcp_base_none_btl_free( struct mca_btl_base_module_t* btl,
145 mca_btl_base_descriptor_t* descriptor,
146 ompi_crcp_base_btl_state_t*);
147
148 ompi_crcp_base_btl_state_t*
149 ompi_crcp_base_none_btl_prepare_src( struct mca_btl_base_module_t* btl,
150 struct mca_btl_base_endpoint_t* endpoint,
151 mca_rcache_base_registration_t* registration,
152 struct opal_convertor_t* convertor,
153 size_t reserve,
154 size_t* size,
155 ompi_crcp_base_btl_state_t*);
156
157 ompi_crcp_base_btl_state_t*
158 ompi_crcp_base_none_btl_prepare_dst( struct mca_btl_base_module_t* btl,
159 struct mca_btl_base_endpoint_t* endpoint,
160 mca_rcache_base_registration_t* registration,
161 struct opal_convertor_t* convertor,
162 size_t reserve,
163 size_t* size,
164 ompi_crcp_base_btl_state_t*);
165
166 ompi_crcp_base_btl_state_t*
167 ompi_crcp_base_none_btl_send( struct mca_btl_base_module_t* btl,
168 struct mca_btl_base_endpoint_t* endpoint,
169 struct mca_btl_base_descriptor_t* descriptor,
170 mca_btl_base_tag_t tag,
171 ompi_crcp_base_btl_state_t*);
172
173 ompi_crcp_base_btl_state_t*
174 ompi_crcp_base_none_btl_put( struct mca_btl_base_module_t* btl,
175 struct mca_btl_base_endpoint_t* endpoint,
176 struct mca_btl_base_descriptor_t* descriptor,
177 ompi_crcp_base_btl_state_t*);
178
179 ompi_crcp_base_btl_state_t*
180 ompi_crcp_base_none_btl_get( struct mca_btl_base_module_t* btl,
181 struct mca_btl_base_endpoint_t* endpoint,
182 struct mca_btl_base_descriptor_t* descriptor,
183 ompi_crcp_base_btl_state_t*);
184
185 ompi_crcp_base_btl_state_t*
186 ompi_crcp_base_none_btl_dump( struct mca_btl_base_module_t* btl,
187 struct mca_btl_base_endpoint_t* endpoint,
188 int verbose,
189 ompi_crcp_base_btl_state_t*);
190
191 ompi_crcp_base_btl_state_t*
192 ompi_crcp_base_none_btl_ft_event(int state,
193 ompi_crcp_base_btl_state_t*);
194
195 OMPI_DECLSPEC extern mca_base_framework_t ompi_crcp_base_framework;
196 OMPI_DECLSPEC extern ompi_crcp_base_component_t ompi_crcp_base_selected_component;
197 OMPI_DECLSPEC extern ompi_crcp_base_module_t ompi_crcp;
198
199 END_C_DECLS
200
201 #endif