root/ompi/mca/crcp/bkmrk/crcp_bkmrk_module.c

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

DEFINITIONS

This source file includes following definitions.
  1. ompi_crcp_bkmrk_component_query
  2. ompi_crcp_bkmrk_module_init
  3. ompi_crcp_bkmrk_module_finalize
  4. ompi_crcp_bkmrk_quiesce_start
  5. ompi_crcp_bkmrk_quiesce_end

   1 /*
   2  * Copyright (c) 2004-2010 The Trustees of Indiana University.
   3  *                         All rights reserved.
   4  * Copyright (c) 2004-2011 The Trustees of the University of Tennessee.
   5  *                         All rights reserved.
   6  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
   7  *                         University of Stuttgart.  All rights reserved.
   8  * Copyright (c) 2004-2005 The Regents of the University of California.
   9  *                         All rights reserved.
  10  * $COPYRIGHT$
  11  *
  12  * Additional copyrights may follow
  13  *
  14  * $HEADER$
  15  */
  16 
  17 #include "ompi_config.h"
  18 
  19 #include <sys/types.h>
  20 #ifdef HAVE_UNISTD_H
  21 #include <unistd.h>
  22 #endif  /* HAVE_UNIST_H */
  23 
  24 #include "ompi/mca/mca.h"
  25 #include "opal/mca/base/base.h"
  26 
  27 #include "opal/util/output.h"
  28 
  29 #include "opal/util/opal_environ.h"
  30 
  31 #include "ompi/mca/crcp/crcp.h"
  32 #include "ompi/mca/crcp/base/base.h"
  33 
  34 #include "crcp_bkmrk.h"
  35 #include "crcp_bkmrk_pml.h"
  36 
  37 /*
  38  * Coord module
  39  */
  40 static ompi_crcp_base_module_t loc_module = {
  41     /** Initialization Function */
  42     ompi_crcp_bkmrk_module_init,
  43     /** Finalization Function */
  44     ompi_crcp_bkmrk_module_finalize,
  45 
  46     /** Quiesce interface */
  47     ompi_crcp_bkmrk_quiesce_start,
  48     ompi_crcp_bkmrk_quiesce_end,
  49 
  50     /** PML Wrapper */
  51     NULL, /* ompi_crcp_bkmrk_pml_enable, */
  52 
  53     NULL, /* ompi_crcp_bkmrk_pml_add_comm, */
  54     NULL, /* ompi_crcp_bkmrk_pml_del_comm, */
  55 
  56     ompi_crcp_bkmrk_pml_add_procs,
  57     ompi_crcp_bkmrk_pml_del_procs,
  58 
  59     NULL, /* ompi_crcp_bkmrk_pml_progress, */
  60 
  61     ompi_crcp_bkmrk_pml_iprobe,
  62     ompi_crcp_bkmrk_pml_probe,
  63 
  64     ompi_crcp_bkmrk_pml_isend_init,
  65     ompi_crcp_bkmrk_pml_isend,
  66     ompi_crcp_bkmrk_pml_send,
  67 
  68     ompi_crcp_bkmrk_pml_irecv_init,
  69     ompi_crcp_bkmrk_pml_irecv,
  70     ompi_crcp_bkmrk_pml_recv,
  71 
  72     ompi_crcp_bkmrk_pml_dump,
  73     ompi_crcp_bkmrk_pml_start,
  74 
  75     ompi_crcp_bkmrk_pml_ft_event,
  76 
  77     /* Request Functions */
  78     ompi_crcp_bkmrk_request_complete,
  79 
  80     /* BTL Wrapper Functions */
  81     NULL, /* btl_add_procs */
  82     NULL, /* btl_del_procs */
  83     NULL, /* btl_register */
  84     NULL, /* btl_finalize */
  85     NULL, /* btl_alloc */
  86     NULL, /* btl_free */
  87     NULL, /* btl_prepare_src */
  88     NULL, /* btl_prepare_dst */
  89     NULL, /* btl_send */
  90     NULL, /* btl_put */
  91     NULL, /* btl_get */
  92     NULL, /* btl_dump */
  93     NULL /* btl_ft_event */
  94 };
  95 
  96 /************************************
  97  * Locally Global vars & functions :)
  98  ************************************/
  99 
 100 /************************
 101  * Function Definitions
 102  ************************/
 103 /*
 104  * MCA Functions
 105  */
 106 int ompi_crcp_bkmrk_component_query(mca_base_module_t **module, int *priority)
 107 {
 108     opal_output_verbose(10, mca_crcp_bkmrk_component.super.output_handle,
 109                         "crcp:bkmrk: component_query()");
 110 
 111     *priority = mca_crcp_bkmrk_component.super.priority;
 112     *module = (mca_base_module_t *)&loc_module;
 113 
 114     return OMPI_SUCCESS;
 115 }
 116 
 117 int ompi_crcp_bkmrk_module_init(void)
 118 {
 119     opal_output_verbose(10, mca_crcp_bkmrk_component.super.output_handle,
 120                         "crcp:bkmrk: module_init()");
 121 
 122     ompi_crcp_bkmrk_pml_init();
 123 
 124     return OMPI_SUCCESS;
 125 }
 126 
 127 int ompi_crcp_bkmrk_module_finalize(void)
 128 {
 129     opal_output_verbose(10, mca_crcp_bkmrk_component.super.output_handle,
 130                         "crcp:bkmrk: module_finalize()");
 131 
 132     ompi_crcp_bkmrk_pml_finalize();
 133 
 134     return OMPI_SUCCESS;
 135 }
 136 
 137 int ompi_crcp_bkmrk_quiesce_start(MPI_Info *info)
 138 {
 139     OPAL_OUTPUT_VERBOSE((10, mca_crcp_bkmrk_component.super.output_handle,
 140                          "crcp:bkmrk: quiesce_start(--)"));
 141 #if 0
 142     if( OMPI_SUCCESS != (ret = ompi_crcp_bkmrk_pml_quiesce_start(QUIESCE_TAG_CKPT)) ) {
 143         ;
 144     }
 145     return OMPI_SUCCESS;
 146 #else
 147     return OMPI_ERR_NOT_IMPLEMENTED;
 148 #endif
 149 }
 150 
 151 int ompi_crcp_bkmrk_quiesce_end(MPI_Info *info)
 152 {
 153     OPAL_OUTPUT_VERBOSE((10, mca_crcp_bkmrk_component.super.output_handle,
 154                          "crcp:bkmrk: quiesce_end(--)"));
 155 #if 0
 156     if( OMPI_SUCCESS != (ret = ompi_crcp_bkmrk_pml_quiesce_end(QUIESCE_TAG_CONTINUE) ) ) {
 157         ;
 158     }
 159     return OMPI_SUCCESS;
 160 #else
 161     return OMPI_ERR_NOT_IMPLEMENTED;
 162 #endif
 163 }
 164 
 165 /******************
 166  * Local functions
 167  ******************/

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