root/ompi/mca/coll/demo/coll_demo.h

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

INCLUDED FROM


   1 /*
   2  * Copyright (c) 2004-2007 The Trustees of Indiana University and Indiana
   3  *                         University Research and Technology
   4  *                         Corporation.  All rights reserved.
   5  * Copyright (c) 2004-2005 The University of Tennessee and The University
   6  *                         of Tennessee Research Foundation.  All rights
   7  *                         reserved.
   8  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
   9  *                         University of Stuttgart.  All rights reserved.
  10  * Copyright (c) 2004-2005 The Regents of the University of California.
  11  *                         All rights reserved.
  12  * Copyright (c) 2008      Cisco Systems, Inc.  All rights reserved.
  13  * $COPYRIGHT$
  14  *
  15  * Additional copyrights may follow
  16  *
  17  * $HEADER$
  18  */
  19 
  20 #ifndef MCA_COLL_DEMO_EXPORT_H
  21 #define MCA_COLL_DEMO_EXPORT_H
  22 
  23 #include "ompi_config.h"
  24 
  25 #include "mpi.h"
  26 #include "ompi/mca/mca.h"
  27 #include "ompi/mca/coll/coll.h"
  28 
  29 BEGIN_C_DECLS
  30 
  31     /* Globally exported variables */
  32 
  33 OMPI_MODULE_DECLSPEC extern const mca_coll_base_component_2_0_0_t mca_coll_demo_component;
  34     extern int mca_coll_demo_priority;
  35     extern int mca_coll_demo_verbose;
  36 
  37 
  38     /* Component functions */
  39 
  40     int mca_coll_demo_init_query(bool enable_progress_threads,
  41                                  bool enable_mpi_threads);
  42 mca_coll_base_module_t *
  43 mca_coll_demo_comm_query(struct ompi_communicator_t *comm, int *priority);
  44 
  45     /* Module functions */
  46 
  47 int mca_coll_demo_module_enable(mca_coll_base_module_t *module,
  48                                 struct ompi_communicator_t *comm);
  49 
  50     int mca_coll_demo_allgather_intra(void *sbuf, int scount,
  51                                       struct ompi_datatype_t *sdtype,
  52                                       void *rbuf, int rcount,
  53                                       struct ompi_datatype_t *rdtype,
  54                                       struct ompi_communicator_t *comm,
  55                                       mca_coll_base_module_t *module);
  56     int mca_coll_demo_allgather_inter(void *sbuf, int scount,
  57                                       struct ompi_datatype_t *sdtype,
  58                                       void *rbuf, int rcount,
  59                                       struct ompi_datatype_t *rdtype,
  60                                       struct ompi_communicator_t *comm,
  61                                       mca_coll_base_module_t *module);
  62 
  63     int mca_coll_demo_allgatherv_intra(void *sbuf, int scount,
  64                                        struct ompi_datatype_t *sdtype,
  65                                        void * rbuf, int *rcounts, int *disps,
  66                                        struct ompi_datatype_t *rdtype,
  67                                        struct ompi_communicator_t *comm,
  68                                        mca_coll_base_module_t *module);
  69     int mca_coll_demo_allgatherv_inter(void *sbuf, int scount,
  70                                        struct ompi_datatype_t *sdtype,
  71                                        void * rbuf, int *rcounts, int *disps,
  72                                        struct ompi_datatype_t *rdtype,
  73                                        struct ompi_communicator_t *comm,
  74                                        mca_coll_base_module_t *module);
  75 
  76     int mca_coll_demo_allreduce_intra(void *sbuf, void *rbuf, int count,
  77                                       struct ompi_datatype_t *dtype,
  78                                       struct ompi_op_t *op,
  79                                       struct ompi_communicator_t *comm,
  80                                       mca_coll_base_module_t *module);
  81     int mca_coll_demo_allreduce_inter(void *sbuf, void *rbuf, int count,
  82                                       struct ompi_datatype_t *dtype,
  83                                       struct ompi_op_t *op,
  84                                       struct ompi_communicator_t *comm,
  85                                       mca_coll_base_module_t *module);
  86 
  87     int mca_coll_demo_alltoall_intra(void *sbuf, int scount,
  88                                      struct ompi_datatype_t *sdtype,
  89                                      void* rbuf, int rcount,
  90                                      struct ompi_datatype_t *rdtype,
  91                                      struct ompi_communicator_t *comm,
  92                                      mca_coll_base_module_t *module);
  93     int mca_coll_demo_alltoall_inter(void *sbuf, int scount,
  94                                      struct ompi_datatype_t *sdtype,
  95                                      void* rbuf, int rcount,
  96                                      struct ompi_datatype_t *rdtype,
  97                                      struct ompi_communicator_t *comm,
  98                                      mca_coll_base_module_t *module);
  99 
 100     int mca_coll_demo_alltoallv_intra(void *sbuf, int *scounts, int *sdisps,
 101                                       struct ompi_datatype_t *sdtype,
 102                                       void *rbuf, int *rcounts, int *rdisps,
 103                                       struct ompi_datatype_t *rdtype,
 104                                       struct ompi_communicator_t *comm,
 105                                       mca_coll_base_module_t *module);
 106     int mca_coll_demo_alltoallv_inter(void *sbuf, int *scounts, int *sdisps,
 107                                       struct ompi_datatype_t *sdtype,
 108                                       void *rbuf, int *rcounts, int *rdisps,
 109                                       struct ompi_datatype_t *rdtype,
 110                                       struct ompi_communicator_t *comm,
 111                                       mca_coll_base_module_t *module);
 112 
 113     int mca_coll_demo_alltoallw_intra(void *sbuf, int *scounts, int *sdisps,
 114                                       struct ompi_datatype_t **sdtypes,
 115                                       void *rbuf, int *rcounts, int *rdisps,
 116                                       struct ompi_datatype_t **rdtypes,
 117                                       struct ompi_communicator_t *comm,
 118                                       mca_coll_base_module_t *module);
 119     int mca_coll_demo_alltoallw_inter(void *sbuf, int *scounts, int *sdisps,
 120                                       struct ompi_datatype_t **sdtypes,
 121                                       void *rbuf, int *rcounts, int *rdisps,
 122                                       struct ompi_datatype_t **rdtypes,
 123                                       struct ompi_communicator_t *comm,
 124                                       mca_coll_base_module_t *module);
 125 
 126     int mca_coll_demo_barrier_intra(struct ompi_communicator_t *comm,
 127                                     mca_coll_base_module_t *module);
 128     int mca_coll_demo_barrier_inter(struct ompi_communicator_t *comm,
 129                                     mca_coll_base_module_t *module);
 130 
 131     int mca_coll_demo_bcast_intra(void *buff, int count,
 132                                   struct ompi_datatype_t *datatype,
 133                                   int root,
 134                                   struct ompi_communicator_t *comm,
 135                                   mca_coll_base_module_t *module);
 136     int mca_coll_demo_bcast_inter(void *buff, int count,
 137                                   struct ompi_datatype_t *datatype,
 138                                   int root,
 139                                   struct ompi_communicator_t *comm,
 140                                   mca_coll_base_module_t *module);
 141 
 142     int mca_coll_demo_exscan_intra(void *sbuf, void *rbuf, int count,
 143                                    struct ompi_datatype_t *dtype,
 144                                    struct ompi_op_t *op,
 145                                    struct ompi_communicator_t *comm,
 146                                    mca_coll_base_module_t *module);
 147     int mca_coll_demo_exscan_inter(void *sbuf, void *rbuf, int count,
 148                                    struct ompi_datatype_t *dtype,
 149                                    struct ompi_op_t *op,
 150                                    struct ompi_communicator_t *comm,
 151                                    mca_coll_base_module_t *module);
 152 
 153     int mca_coll_demo_gather_intra(void *sbuf, int scount,
 154                                    struct ompi_datatype_t *sdtype, void *rbuf,
 155                                    int rcount, struct ompi_datatype_t *rdtype,
 156                                    int root, struct ompi_communicator_t *comm,
 157                                    mca_coll_base_module_t *module);
 158     int mca_coll_demo_gather_inter(void *sbuf, int scount,
 159                                    struct ompi_datatype_t *sdtype, void *rbuf,
 160                                    int rcount, struct ompi_datatype_t *rdtype,
 161                                    int root, struct ompi_communicator_t *comm,
 162                                    mca_coll_base_module_t *module);
 163 
 164     int mca_coll_demo_gatherv_intra(void *sbuf, int scount,
 165                                     struct ompi_datatype_t *sdtype, void *rbuf,
 166                                     int *rcounts, int *disps,
 167                                     struct ompi_datatype_t *rdtype, int root,
 168                                     struct ompi_communicator_t *comm,
 169                                     mca_coll_base_module_t *module);
 170     int mca_coll_demo_gatherv_inter(void *sbuf, int scount,
 171                                     struct ompi_datatype_t *sdtype, void *rbuf,
 172                                     int *rcounts, int *disps,
 173                                     struct ompi_datatype_t *rdtype, int root,
 174                                     struct ompi_communicator_t *comm,
 175                                     mca_coll_base_module_t *module);
 176 
 177     int mca_coll_demo_reduce_intra(void *sbuf, void* rbuf, int count,
 178                                    struct ompi_datatype_t *dtype,
 179                                    struct ompi_op_t *op,
 180                                    int root,
 181                                    struct ompi_communicator_t *comm,
 182                                    mca_coll_base_module_t *module);
 183     int mca_coll_demo_reduce_inter(void *sbuf, void* rbuf, int count,
 184                                    struct ompi_datatype_t *dtype,
 185                                    struct ompi_op_t *op,
 186                                    int root,
 187                                    struct ompi_communicator_t *comm,
 188                                    mca_coll_base_module_t *module);
 189 
 190     int mca_coll_demo_reduce_scatter_intra(void *sbuf, void *rbuf,
 191                                            int *rcounts,
 192                                            struct ompi_datatype_t *dtype,
 193                                            struct ompi_op_t *op,
 194                                            struct ompi_communicator_t *comm,
 195                                            mca_coll_base_module_t *module);
 196     int mca_coll_demo_reduce_scatter_inter(void *sbuf, void *rbuf,
 197                                            int *rcounts,
 198                                            struct ompi_datatype_t *dtype,
 199                                            struct ompi_op_t *op,
 200                                            struct ompi_communicator_t *comm,
 201                                            mca_coll_base_module_t *module);
 202 
 203     int mca_coll_demo_scan_intra(void *sbuf, void *rbuf, int count,
 204                                  struct ompi_datatype_t *dtype,
 205                                  struct ompi_op_t *op,
 206                                  struct ompi_communicator_t *comm,
 207                                  mca_coll_base_module_t *module);
 208     int mca_coll_demo_scan_inter(void *sbuf, void *rbuf, int count,
 209                                  struct ompi_datatype_t *dtype,
 210                                  struct ompi_op_t *op,
 211                                  struct ompi_communicator_t *comm,
 212                                  mca_coll_base_module_t *module);
 213 
 214     int mca_coll_demo_scatter_intra(void *sbuf, int scount,
 215                                     struct ompi_datatype_t *sdtype, void *rbuf,
 216                                     int rcount, struct ompi_datatype_t *rdtype,
 217                                     int root, struct ompi_communicator_t *comm,
 218                                     mca_coll_base_module_t *module);
 219     int mca_coll_demo_scatter_inter(void *sbuf, int scount,
 220                                     struct ompi_datatype_t *sdtype, void *rbuf,
 221                                     int rcount, struct ompi_datatype_t *rdtype,
 222                                     int root, struct ompi_communicator_t *comm,
 223                                     mca_coll_base_module_t *module);
 224 
 225     int mca_coll_demo_scatterv_intra(void *sbuf, int *scounts, int *disps,
 226                                      struct ompi_datatype_t *sdtype,
 227                                      void* rbuf, int rcount,
 228                                      struct ompi_datatype_t *rdtype, int root,
 229                                      struct ompi_communicator_t *comm,
 230                                      mca_coll_base_module_t *module);
 231     int mca_coll_demo_scatterv_inter(void *sbuf, int *scounts, int *disps,
 232                                      struct ompi_datatype_t *sdtype,
 233                                      void* rbuf, int rcount,
 234                                      struct ompi_datatype_t *rdtype, int root,
 235                                      struct ompi_communicator_t *comm,
 236                                      mca_coll_base_module_t *module);
 237 
 238     int mca_coll_demo_ft_event(int status);
 239 
 240 
 241 struct mca_coll_demo_module_t {
 242     mca_coll_base_module_t super;
 243 
 244     mca_coll_base_comm_coll_t underlying;
 245 };
 246 typedef struct mca_coll_demo_module_t mca_coll_demo_module_t;
 247 OBJ_CLASS_DECLARATION(mca_coll_demo_module_t);
 248 
 249 
 250 END_C_DECLS
 251 
 252 #endif /* MCA_COLL_DEMO_EXPORT_H */

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