root/ompi/mca/pml/monitoring/pml_monitoring.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * Copyright (c) 2013-2015 The University of Tennessee and The University
   3  *                         of Tennessee Research Foundation.  All rights
   4  *                         reserved.
   5  * Copyright (c) 2013-2017 Inria.  All rights reserved.
   6  * Copyright (c) 2015      Bull SAS.  All rights reserved.
   7  * $COPYRIGHT$
   8  *
   9  * Additional copyrights may follow
  10  *
  11  * $HEADER$
  12  */
  13 
  14 #ifndef MCA_PML_MONITORING_H
  15 #define MCA_PML_MONITORING_H
  16 
  17 BEGIN_C_DECLS
  18 
  19 #include <ompi_config.h>
  20 #include <ompi/communicator/communicator.h>
  21 #include <ompi/datatype/ompi_datatype.h>
  22 #include <ompi/mca/pml/pml.h>
  23 #include <ompi/mca/pml/base/base.h>
  24 #include <ompi/mca/common/monitoring/common_monitoring.h>
  25 #include <opal/mca/base/mca_base_pvar.h>
  26 
  27 typedef mca_pml_base_module_t mca_pml_monitoring_module_t;
  28 
  29 extern mca_pml_base_component_t pml_selected_component;
  30 extern mca_pml_base_module_t pml_selected_module;
  31 extern mca_pml_monitoring_module_t mca_pml_monitoring_module;
  32 OMPI_DECLSPEC extern mca_pml_base_component_2_0_0_t mca_pml_monitoring_component;
  33 
  34 /*
  35  * PML interface functions.
  36  */
  37 
  38 extern int mca_pml_monitoring_add_comm(struct ompi_communicator_t* comm);
  39 
  40 extern int mca_pml_monitoring_del_comm(struct ompi_communicator_t* comm);
  41 
  42 extern int mca_pml_monitoring_add_procs(struct ompi_proc_t **procs, size_t nprocs);
  43 
  44 extern int mca_pml_monitoring_del_procs(struct ompi_proc_t **procs, size_t nprocs);
  45 
  46 extern int mca_pml_monitoring_enable(bool enable);
  47 
  48 extern int mca_pml_monitoring_iprobe(int dst,
  49                                      int tag,
  50                                      struct ompi_communicator_t* comm,
  51                                      int *matched,
  52                                      ompi_status_public_t* status );
  53 
  54 extern int mca_pml_monitoring_probe(int dst,
  55                                     int tag,
  56                                     struct ompi_communicator_t* comm,
  57                                     ompi_status_public_t* status );
  58 
  59 extern int mca_pml_monitoring_improbe(int dst,
  60                                       int tag,
  61                                       struct ompi_communicator_t* comm,
  62                                       int *matched,
  63                                       struct ompi_message_t **message,
  64                                       ompi_status_public_t* status );
  65 
  66 extern int mca_pml_monitoring_mprobe(int dst,
  67                                      int tag,
  68                                      struct ompi_communicator_t* comm,
  69                                      struct ompi_message_t **message,
  70                                      ompi_status_public_t* status );
  71 
  72 extern int mca_pml_monitoring_isend_init(const void *buf,
  73                                          size_t count,
  74                                          ompi_datatype_t *datatype,
  75                                          int dst,
  76                                          int tag,
  77                                          mca_pml_base_send_mode_t mode,
  78                                          struct ompi_communicator_t* comm,
  79                                          struct ompi_request_t **request);
  80 
  81 extern int mca_pml_monitoring_isend(const void *buf,
  82                                     size_t count,
  83                                     ompi_datatype_t *datatype,
  84                                     int dst,
  85                                     int tag,
  86                                     mca_pml_base_send_mode_t mode,
  87                                     struct ompi_communicator_t* comm,
  88                                     struct ompi_request_t **request);
  89 
  90 extern int mca_pml_monitoring_send(const void *buf,
  91                                    size_t count,
  92                                    ompi_datatype_t *datatype,
  93                                    int dst,
  94                                    int tag,
  95                                    mca_pml_base_send_mode_t mode,
  96                                    struct ompi_communicator_t* comm);
  97 
  98 extern int mca_pml_monitoring_irecv_init(void *buf,
  99                                          size_t count,
 100                                          ompi_datatype_t *datatype,
 101                                          int src,
 102                                          int tag,
 103                                          struct ompi_communicator_t* comm,
 104                                          struct ompi_request_t **request);
 105 
 106 extern int mca_pml_monitoring_irecv(void *buf,
 107                                     size_t count,
 108                                     ompi_datatype_t *datatype,
 109                                     int src,
 110                                     int tag,
 111                                     struct ompi_communicator_t* comm,
 112                                     struct ompi_request_t **request);
 113 
 114 extern int mca_pml_monitoring_recv(void *buf,
 115                                    size_t count,
 116                                    ompi_datatype_t *datatype,
 117                                    int src,
 118                                    int tag,
 119                                    struct ompi_communicator_t* comm,
 120                                    ompi_status_public_t* status);
 121 
 122 extern int mca_pml_monitoring_imrecv(void *buf,
 123                                      size_t count,
 124                                      ompi_datatype_t *datatype,
 125                                      struct ompi_message_t **message,
 126                                      struct ompi_request_t **request);
 127 
 128 extern int mca_pml_monitoring_mrecv(void *buf,
 129                                     size_t count,
 130                                     ompi_datatype_t *datatype,
 131                                     struct ompi_message_t **message,
 132                                     ompi_status_public_t* status);
 133 
 134 extern int mca_pml_monitoring_dump(struct ompi_communicator_t* comm,
 135                                    int verbose);
 136 
 137 extern int mca_pml_monitoring_start(size_t count,
 138                                     ompi_request_t** requests);
 139 
 140 END_C_DECLS
 141 
 142 #endif  /* MCA_PML_MONITORING_H */

/* [<][>][^][v][top][bottom][index][help] */