1
1
openmpi/orte/mca/ras/base/base.h
Ralph Castain bae5dab916 If (and only if) a user requests, set the default number of slots on any node to the number of objects of the specified type. This *only* takes effect in an unmanaged environment - i.e., if an external resource manager assigns us a number of slots, then that is what we use. However, if we are using a hostfile, then the user may or may not have given us a value for the number of slots on each node.
For those nodes (and *only* those nodes) where the user does *not* specify a slot count, we will set the number of slots according to their direction: either to the number of cores, numas, sockets, or hwthreads. Otherwise, the slot count is set to 1.

Note that the default behavior remains unchanged: in the absence of any value for #slots, and in the absence of any directive to set #slots, we will set #slots=1.

This commit was SVN r27236.
2012-09-04 20:58:26 +00:00

72 строки
1.8 KiB
C

/*
* Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2011-2012 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
/** @file:
*/
#ifndef ORTE_MCA_RAS_BASE_H
#define ORTE_MCA_RAS_BASE_H
/*
* includes
*/
#include "orte_config.h"
#include "orte/mca/ras/ras.h"
/*
* Global functions for MCA overall collective open and close
*/
BEGIN_C_DECLS
ORTE_DECLSPEC int orte_ras_base_open(void);
#if !ORTE_DISABLE_FULL_SUPPORT
/*
* globals that might be needed
*/
typedef struct orte_ras_base_t {
int ras_output;
opal_list_t ras_opened;
bool allocation_read;
orte_ras_base_module_t *active_module;
int total_slots_alloc;
} orte_ras_base_t;
ORTE_DECLSPEC extern orte_ras_base_t orte_ras_base;
/*
* function definitions
*/
ORTE_DECLSPEC int orte_ras_base_select(void);
ORTE_DECLSPEC int orte_ras_base_finalize(void);
ORTE_DECLSPEC int orte_ras_base_close(void);
ORTE_DECLSPEC void orte_ras_base_display_alloc(void);
ORTE_DECLSPEC void orte_ras_base_allocate(int fd, short args, void *cbdata);
ORTE_DECLSPEC int orte_ras_base_add_hosts(orte_job_t *jdata);
#endif /* ORTE_DISABLE_FULL_SUPPORT */
END_C_DECLS
#endif