root/ompi/mca/fcoll/dynamic_gen2/fcoll_dynamic_gen2_component.c

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

DEFINITIONS

This source file includes following definitions.
  1. dynamic_gen2_register

   1 /* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
   2 /*
   3  * Copyright (c) 2004-2007 The Trustees of Indiana University and Indiana
   4  *                         University Research and Technology
   5  *                         Corporation.  All rights reserved.
   6  * Copyright (c) 2004-2005 The University of Tennessee and The University
   7  *                         of Tennessee Research Foundation.  All rights
   8  *                         reserved.
   9  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
  10  *                         University of Stuttgart.  All rights reserved.
  11  * Copyright (c) 2004-2005 The Regents of the University of California.
  12  *                         All rights reserved.
  13  * Copyright (c) 2008      Cisco Systems, Inc.  All rights reserved.
  14  * Copyright (c) 2008-2016 University of Houston. All rights reserved.
  15  * Copyright (c) 2015      Los Alamos National Security, LLC. All rights
  16  *                         reserved.
  17  * $COPYRIGHT$
  18  *
  19  * Additional copyrights may follow
  20  *
  21  * $HEADER$
  22  *
  23  * These symbols are in a file by themselves to provide nice linker
  24  * semantics.  Since linkers generally pull in symbols by object
  25  * files, keeping these symbols as the only symbols in this file
  26  * prevents utility programs such as "ompi_info" from having to import
  27  * entire components just to query their version and parameters.
  28  */
  29 
  30 #include "ompi_config.h"
  31 #include "fcoll_dynamic_gen2.h"
  32 #include "mpi.h"
  33 
  34 /*
  35  * Public string showing the fcoll ompi_dynamic_gen2 component version number
  36  */
  37 const char *mca_fcoll_dynamic_gen2_component_version_string =
  38     "Open MPI dynamic_gen2 collective MCA component version " OMPI_VERSION;
  39 
  40 /*
  41  * Global variables
  42  */
  43 int mca_fcoll_dynamic_gen2_priority = 10;
  44 int mca_fcoll_dynamic_gen2_num_groups = 1;
  45 int mca_fcoll_dynamic_gen2_write_chunksize = -1;
  46 
  47 /*
  48  * Local function
  49  */
  50 static int dynamic_gen2_register(void);
  51 
  52 /*
  53  * Instantiate the public struct with all of our public information
  54  * and pointers to our public functions in it
  55  */
  56 mca_fcoll_base_component_2_0_0_t mca_fcoll_dynamic_gen2_component = {
  57 
  58     /* First, the mca_component_t struct containing meta information
  59      * about the component itself */
  60 
  61     .fcollm_version = {
  62         MCA_FCOLL_BASE_VERSION_2_0_0,
  63 
  64         /* Component name and version */
  65         .mca_component_name = "dynamic_gen2",
  66         MCA_BASE_MAKE_VERSION(component, OMPI_MAJOR_VERSION, OMPI_MINOR_VERSION,
  67                               OMPI_RELEASE_VERSION),
  68         .mca_register_component_params = dynamic_gen2_register,
  69     },
  70     .fcollm_data = {
  71         /* The component is checkpoint ready */
  72         MCA_BASE_METADATA_PARAM_CHECKPOINT
  73     },
  74 
  75     .fcollm_init_query = mca_fcoll_dynamic_gen2_component_init_query,
  76     .fcollm_file_query = mca_fcoll_dynamic_gen2_component_file_query,
  77     .fcollm_file_unquery = mca_fcoll_dynamic_gen2_component_file_unquery,
  78 };
  79 
  80 
  81 static int
  82 dynamic_gen2_register(void)
  83 {
  84     mca_fcoll_dynamic_gen2_priority = 10;
  85     (void) mca_base_component_var_register(&mca_fcoll_dynamic_gen2_component.fcollm_version,
  86                                            "priority", "Priority of the dynamic_gen2 fcoll component",
  87                                            MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
  88                                            OPAL_INFO_LVL_9,
  89                                            MCA_BASE_VAR_SCOPE_READONLY, &mca_fcoll_dynamic_gen2_priority);
  90 
  91     mca_fcoll_dynamic_gen2_num_groups = 1;
  92     (void) mca_base_component_var_register(&mca_fcoll_dynamic_gen2_component.fcollm_version,
  93                                            "num_groups", "Number of subgroups created by the dynamic_gen2 component",
  94                                            MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
  95                                            OPAL_INFO_LVL_9,
  96                                            MCA_BASE_VAR_SCOPE_READONLY, &mca_fcoll_dynamic_gen2_num_groups);
  97 
  98     mca_fcoll_dynamic_gen2_write_chunksize = -1;
  99     (void) mca_base_component_var_register(&mca_fcoll_dynamic_gen2_component.fcollm_version,
 100                                            "write_chunksize", "Chunk size written at once. Default: stripe_size of the file system",
 101                                            MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
 102                                            OPAL_INFO_LVL_9,
 103                                            MCA_BASE_VAR_SCOPE_READONLY, &mca_fcoll_dynamic_gen2_write_chunksize);
 104 
 105     return OMPI_SUCCESS;
 106 }

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