static int pubsub_pmi_component_query(mca_base_module_t **module, int *priority)
{
    /* for now, only use PMI when direct launched */
    if (NULL == orte_process_info.my_hnp_uri &&
        ORTE_PROC_IS_MPI &&
        mca_common_pmi_init ()) {
        /* if PMI is available, use it */
        *priority = my_priority;
        *module = (mca_base_module_t *)&ompi_pubsub_pmi_module;
        return ORTE_SUCCESS;
    }

    /* we can't run */
    *priority = -1;
    *module = NULL;
    return OMPI_ERROR;
}
static int db_pmi_component_query(opal_db_base_module_t **module,
                                  int *store_priority,
                                  int *fetch_priority)
{
    /* only use PMI if available - the ESS pmi module
     * will force our selection if we are direct-launched
     */
    if (mca_common_pmi_init()) {
        *store_priority = my_store_priority;
        *fetch_priority = my_fetch_priority;
        *module = &opal_db_pmi_module;
        return OPAL_SUCCESS;
    }

    *store_priority = 0;
    *fetch_priority = 0;
    *module = NULL;
    return OPAL_ERROR;
}
Beispiel #3
0
static int db_pmi_component_query(opal_db_base_module_t **module,
                                  int *store_priority,
                                  int *fetch_priority,
                                  bool restrict_local)
{
    if (!restrict_local) {
        /* only use PMI if available - the ESS pmi module
         * will force our selection if we are direct-launched,
         * and the orted will turn us "off" if indirectly launched
         */
        if (mca_common_pmi_init()) {
            *store_priority = my_store_priority;
            *fetch_priority = my_fetch_priority;
            *module = &opal_db_pmi_module;
            return OPAL_SUCCESS;
        }
    }

    *store_priority = 0;
    *fetch_priority = 0;
    *module = NULL;
    return OPAL_ERROR;
}