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