⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pml.h

📁 MPI stands for the Message Passing Interface. Written by the MPI Forum (a large committee comprising
💻 H
📖 第 1 页 / 共 2 页
字号:
    int tag,    struct ompi_communicator_t* comm,    struct ompi_request_t **request);/** *  Post a receive and wait for completion.  * *  @param buf (IN)         User buffer *  @param count (IN)       Number of elements of the specified datatype *  @param datatype (IN)    User defined datatype *  @param src (IN)         Source rank w/in communicator *  @param tag (IN)         User defined tag *  @param comm (IN)        Communicator *  @param status (OUT)     Completion status *  @return                 OMPI_SUCCESS or failure status. */typedef int (*mca_pml_base_module_recv_fn_t)(    void *buf,    size_t count,    struct ompi_datatype_t *datatype,    int src,    int tag,    struct ompi_communicator_t* comm,    ompi_status_public_t* status);/** *  Initialize a persistent send request.  * *  @param buf (IN)         User buffer. *  @param count (IN)       Number of elements of the specified datatype. *  @param datatype (IN)    User defined datatype. *  @param dst (IN)         Peer rank w/in communicator. *  @param tag (IN)         User defined tag. *  @param mode (IN)        Send mode (STANDARD,BUFFERED,SYNCHRONOUS,READY) *  @param comm (IN)        Communicator. *  @param request (OUT)    Request handle. *  @return                 OMPI_SUCCESS or failure status. */typedef int (*mca_pml_base_module_isend_init_fn_t)(    void *buf,    size_t count,    struct ompi_datatype_t *datatype,    int dst,    int tag,    mca_pml_base_send_mode_t mode,    struct ompi_communicator_t* comm,    struct ompi_request_t **request);/** *  Post a send request.  * *  @param buf (IN)         User buffer. *  @param count (IN)       Number of elements of the specified datatype. *  @param datatype (IN)    User defined datatype. *  @param dst (IN)         Peer rank w/in communicator. *  @param tag (IN)         User defined tag. *  @param mode (IN)        Send mode (STANDARD,BUFFERED,SYNCHRONOUS,READY) *  @param comm (IN)        Communicator. *  @param request (OUT)    Request handle. *  @return                 OMPI_SUCCESS or failure status. */typedef int (*mca_pml_base_module_isend_fn_t)(    void *buf,    size_t count,    struct ompi_datatype_t *datatype,    int dst,    int tag,    mca_pml_base_send_mode_t mode,    struct ompi_communicator_t* comm,    struct ompi_request_t **request);/** *  Post a send request and wait for completion. * *  @param buf (IN)         User buffer. *  @param count (IN)       Number of elements of the specified datatype. *  @param datatype (IN)    User defined datatype. *  @param dst (IN)         Peer rank w/in communicator. *  @param tag (IN)         User defined tag. *  @param mode (IN)        Send mode (STANDARD,BUFFERED,SYNCHRONOUS,READY) *  @param comm (IN)        Communicator. *  @return                 OMPI_SUCCESS or failure status. */typedef int (*mca_pml_base_module_send_fn_t)(    void *buf,    size_t count,    struct ompi_datatype_t *datatype,    int dst,    int tag,    mca_pml_base_send_mode_t mode,    struct ompi_communicator_t* comm);/** * Initiate one or more persistent requests. * * @param count    Number of requests * @param request  Array of persistent requests * @return         OMPI_SUCCESS or failure status. */typedef int (*mca_pml_base_module_start_fn_t)(    size_t count,    struct ompi_request_t** requests);/** * Probe to poll for pending recv. * * @param src (IN)        Source rank w/in communicator. * @param tag (IN)        User defined tag. * @param comm (IN)       Communicator. * @param matched (OUT)   Flag indicating if matching recv exists. * @param status (OUT)    Completion statuses. * @return                OMPI_SUCCESS or failure status. * */typedef int (*mca_pml_base_module_iprobe_fn_t)(    int src,    int tag,    struct ompi_communicator_t* comm,    int *matched,    ompi_status_public_t *status);/** * Blocking probe to wait for pending recv. * * @param src (IN)        Source rank w/in communicator. * @param tag (IN)        User defined tag. * @param comm (IN)       Communicator. * @param status (OUT)    Completion statuses. * @return                OMPI_SUCCESS or failure status. * */typedef int (*mca_pml_base_module_probe_fn_t)(    int src,    int tag,    struct ompi_communicator_t* comm,    ompi_status_public_t *status);/** * Cancel pending operation. *  * @param request (IN)    Request * @return                OMPI_SUCCESS or failure status. * */typedef int (*mca_pml_base_module_cancel_fn_t)(    struct ompi_request_t* request);/** * Has a request been cancelled? *  * @param request (IN)    Request * @return                OMPI_SUCCESS or failure status. * */typedef int (*mca_pml_base_module_cancelled_fn_t)(    struct ompi_request_t* request,    int *flag);/** * Release resources held by a persistent mode request. * * @param request (IN)    Request * @return                OMPI_SUCCESS or failure status. * */typedef int (*mca_pml_base_module_free_fn_t)(    struct ompi_request_t** request);/** * A special NULL request handle. * * @param request (OUT)   Request * @return                OMPI_SUCCESS or failure status. * */typedef int (*mca_pml_base_module_null_fn_t)(    struct ompi_request_t** request);/** * Diagnostics function. * * @param request (IN)    Communicator * @return                OMPI_SUCCESS or failure status. * */typedef int (*mca_pml_base_module_dump_fn_t)(    struct ompi_communicator_t* comm,    int verbose);/** *  PML instance. */struct mca_pml_base_module_1_0_0_t {    /* downcalls from MCA to PML */    mca_pml_base_module_add_procs_fn_t    pml_add_procs;    mca_pml_base_module_del_procs_fn_t    pml_del_procs;    mca_pml_base_module_enable_fn_t       pml_enable;    mca_pml_base_module_progress_fn_t     pml_progress;    /* downcalls from MPI to PML */    mca_pml_base_module_add_comm_fn_t     pml_add_comm;    mca_pml_base_module_del_comm_fn_t     pml_del_comm;    mca_pml_base_module_irecv_init_fn_t   pml_irecv_init;    mca_pml_base_module_irecv_fn_t        pml_irecv;    mca_pml_base_module_recv_fn_t         pml_recv;    mca_pml_base_module_isend_init_fn_t   pml_isend_init;    mca_pml_base_module_isend_fn_t        pml_isend;    mca_pml_base_module_send_fn_t         pml_send;    mca_pml_base_module_iprobe_fn_t       pml_iprobe;    mca_pml_base_module_probe_fn_t        pml_probe;    mca_pml_base_module_start_fn_t        pml_start;    /* diagnostics */    mca_pml_base_module_dump_fn_t         pml_dump;    /* maximum constant sizes */    int                                   pml_max_contextid;    int                                   pml_max_tag;};typedef struct mca_pml_base_module_1_0_0_t mca_pml_base_module_1_0_0_t;typedef mca_pml_base_module_1_0_0_t mca_pml_base_module_t;/* * Macro for use in components that are of type pml v1.0.0 */#define MCA_PML_BASE_VERSION_1_0_0 \  /* pml v1.0 is chained to MCA v1.0 */ \  MCA_BASE_VERSION_1_0_0, \  /* pml v1.0 */ \  "pml", 1, 0, 0    /*     * macro for doing direct call / call through struct     */#if MCA_pml_DIRECT_CALL#include MCA_pml_DIRECT_CALL_HEADER#define MCA_PML_CALL_STAMP(a, b) mca_pml_ ## a ## _ ## b#define MCA_PML_CALL_EXPANDER(a, b) MCA_PML_CALL_STAMP(a,b)#define MCA_PML_CALL(a) MCA_PML_CALL_EXPANDER(MCA_pml_DIRECT_CALL_COMPONENT, a)#else#define MCA_PML_CALL(a) mca_pml.pml_ ## a#endifOMPI_DECLSPEC extern mca_pml_base_module_t mca_pml;#if defined(c_plusplus) || defined(__cplusplus)}#endif#endif /* MCA_PML_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -