@@ -208,17 +208,35 @@ typedef int (*mca_spml_base_module_put_nb_fn_t)(void *dst_addr,
208208 * Blocking data transfer from remote PE.
209209 * Read data from remote PE.
210210 *
211- * @param dst_addr - The address on the local PE, to write the result of the get operation to.
212- * @param size - The number of bytes to be read.
213- * @param src_addr - The address on the remote PE, to read from.
214- * @param src - The ID of the remote PE.
215- * @return - OSHMEM_SUCCESS or failure status.
211+ * @param dst_addr The address on the local PE, to write the result of the get operation to.
212+ * @param size The number of bytes to be read.
213+ * @param src_addr The address on the remote PE, to read from.
214+ * @param src The ID of the remote PE.
215+ * @return OSHMEM_SUCCESS or failure status.
216216 */
217217typedef int (* mca_spml_base_module_get_fn_t )(void * dst_addr ,
218218 size_t size ,
219219 void * src_addr ,
220220 int src );
221221
222+ /**
223+ * Non-blocking data transfer from remote PE.
224+ * Read data from remote PE.
225+ *
226+ * @param dst_addr The address on the local PE, to write the result of the get operation to.
227+ * @param size The number of bytes to be read.
228+ * @param src_addr The address on the remote PE, to read from.
229+ * @param src The ID of the remote PE.
230+ * @param handle The address of a handle to be passed to shmem_wait_nb() or
231+ * shmem_test_nb() to wait or poll for the completion of the transfer.
232+ * @return - OSHMEM_SUCCESS or failure status.
233+ */
234+ typedef int (* mca_spml_base_module_get_nb_fn_t )(void * dst_addr ,
235+ size_t size ,
236+ void * src_addr ,
237+ int src ,
238+ void * * handle );
239+
222240/**
223241 * Post a receive and wait for completion.
224242 *
@@ -255,7 +273,7 @@ typedef int (*mca_spml_base_module_fence_fn_t)(void);
255273 *
256274 * @return - OSHMEM_SUCCESS or failure status.
257275 */
258- typedef int (* mca_spml_base_module_wait_nb_fn_t )(void * );
276+ typedef int (* mca_spml_base_module_wait_nb_fn_t )(void * );
259277
260278/**
261279 * SPML instance.
@@ -273,6 +291,7 @@ struct mca_spml_base_module_1_0_0_t {
273291 mca_spml_base_module_put_fn_t spml_put ;
274292 mca_spml_base_module_put_nb_fn_t spml_put_nb ;
275293 mca_spml_base_module_get_fn_t spml_get ;
294+ mca_spml_base_module_get_nb_fn_t spml_get_nb ;
276295
277296 mca_spml_base_module_recv_fn_t spml_recv ;
278297 mca_spml_base_module_send_fn_t spml_send ;
0 commit comments