2005-03-14 23:57:21 +03:00
|
|
|
/*
|
2005-11-05 22:57:48 +03:00
|
|
|
* 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.
|
2015-06-24 06:59:57 +03:00
|
|
|
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
2005-03-14 23:57:21 +03:00
|
|
|
* University of Stuttgart. All rights reserved.
|
2005-03-24 15:43:37 +03:00
|
|
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
|
|
|
* All rights reserved.
|
2013-02-28 05:35:55 +04:00
|
|
|
* Copyright (c) 2011-2013 Los Alamos National Security, LLC. All rights
|
2015-06-24 06:59:57 +03:00
|
|
|
* reserved.
|
2005-03-14 23:57:21 +03:00
|
|
|
* $COPYRIGHT$
|
2015-06-24 06:59:57 +03:00
|
|
|
*
|
2005-03-14 23:57:21 +03:00
|
|
|
* Additional copyrights may follow
|
2015-06-24 06:59:57 +03:00
|
|
|
*
|
2005-03-14 23:57:21 +03:00
|
|
|
* $HEADER$
|
|
|
|
*/
|
|
|
|
/** @file:
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef ORTE_MCA_RAS_BASE_H
|
|
|
|
#define ORTE_MCA_RAS_BASE_H
|
|
|
|
|
|
|
|
/*
|
|
|
|
* includes
|
|
|
|
*/
|
|
|
|
#include "orte_config.h"
|
2006-07-10 18:10:21 +04:00
|
|
|
|
2006-02-12 04:33:29 +03:00
|
|
|
#include "orte/mca/ras/ras.h"
|
2005-03-14 23:57:21 +03:00
|
|
|
/*
|
|
|
|
* Global functions for MCA overall collective open and close
|
|
|
|
*/
|
2008-02-28 04:57:57 +03:00
|
|
|
|
|
|
|
BEGIN_C_DECLS
|
2005-03-14 23:57:21 +03:00
|
|
|
|
2013-03-28 01:14:43 +04:00
|
|
|
/*
|
|
|
|
* MCA Framework
|
|
|
|
*/
|
|
|
|
ORTE_DECLSPEC extern mca_base_framework_t orte_ras_base_framework;
|
|
|
|
/* select a component */
|
|
|
|
ORTE_DECLSPEC int orte_ras_base_select(void);
|
2008-06-18 07:15:56 +04:00
|
|
|
|
2005-03-14 23:57:21 +03:00
|
|
|
/*
|
2008-02-28 04:57:57 +03:00
|
|
|
* globals that might be needed
|
2005-03-14 23:57:21 +03:00
|
|
|
*/
|
2008-02-28 04:57:57 +03:00
|
|
|
typedef struct orte_ras_base_t {
|
|
|
|
bool allocation_read;
|
|
|
|
orte_ras_base_module_t *active_module;
|
2012-04-06 18:23:13 +04:00
|
|
|
int total_slots_alloc;
|
2008-02-28 04:57:57 +03:00
|
|
|
} orte_ras_base_t;
|
2005-03-14 23:57:21 +03:00
|
|
|
|
2008-02-28 04:57:57 +03:00
|
|
|
ORTE_DECLSPEC extern orte_ras_base_t orte_ras_base;
|
2005-03-14 23:57:21 +03:00
|
|
|
|
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-05 00:58:26 +04:00
|
|
|
ORTE_DECLSPEC void orte_ras_base_display_alloc(void);
|
|
|
|
|
2012-04-06 18:23:13 +04:00
|
|
|
ORTE_DECLSPEC void orte_ras_base_allocate(int fd, short args, void *cbdata);
|
|
|
|
|
2009-07-14 18:34:11 +04:00
|
|
|
ORTE_DECLSPEC int orte_ras_base_add_hosts(orte_job_t *jdata);
|
|
|
|
|
2008-02-28 04:57:57 +03:00
|
|
|
END_C_DECLS
|
2005-03-14 23:57:21 +03:00
|
|
|
|
|
|
|
#endif
|