OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

ras_private.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
3 * University Research and Technology
4 * Corporation. All rights reserved.
5 * Copyright (c) 2004-2008 The University of Tennessee and The University
6 * of Tennessee Research Foundation. All rights
7 * reserved.
8 * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9 * University of Stuttgart. All rights reserved.
10 * Copyright (c) 2004-2005 The Regents of the University of California.
11 * All rights reserved.
12 * Copyright (c) 2008 UT-Battelle, LLC. All rights reserved.
13 * $COPYRIGHT$
14 *
15 * Additional copyrights may follow
16 *
17 * $HEADER$
18 */
19 /** @file:
20 */
21
22 #ifndef ORTE_RAS_PRIVATE_H
23 #define ORTE_RAS_PRIVATE_H
24
25 /*
26 * includes
27 */
28 #include "orte_config.h"
29 #include "orte/constants.h"
30 #include "orte/types.h"
31
32 #include "opal/class/opal_list.h"
33
34 #include "orte/mca/ras/ras_types.h"
35
36 #include "orte/mca/ras/ras.h"
37 #include "orte/mca/ras/base/base.h"
38
39
40 BEGIN_C_DECLS
41
42 /*
43 * API function definitions
44 */
45 ORTE_DECLSPEC int orte_ras_base_allocate(orte_job_t *jdata);
46
47 /**
48 * Add the specified node definitions to the registry
49 */
50 ORTE_DECLSPEC int orte_ras_base_node_insert(opal_list_t*, orte_job_t*);
51
52 #if 0
53 /*
54 * Internal support functions
55 */
56 ORTE_DECLSPEC int orte_ras_base_allocate_nodes(orte_jobid_t jobid,
57 opal_list_t* nodes);
58
59 ORTE_DECLSPEC int orte_ras_base_reallocate(orte_jobid_t parent_jobid,
60 orte_jobid_t child_jobid);
61
62 ORTE_DECLSPEC int orte_ras_base_set_oversubscribe_override(orte_jobid_t job);
63
64 ORTE_DECLSPEC int orte_ras_base_hostfile_query(char *hostfile);
65
66 ORTE_DECLSPEC int orte_ras_base_get_oversubscribe_override(orte_jobid_t job, bool *flag);
67
68 ORTE_DECLSPEC int orte_ras_base_read_nodename_file(opal_list_t *nodes, char *filename);
69
70 /*
71 * Query the registry for all available nodes
72 */
73 ORTE_DECLSPEC int orte_ras_base_node_query(opal_list_t*);
74
75 /*
76 * Query the registry for a specific node
77 */
78 ORTE_DECLSPEC orte_ras_node_t* orte_ras_base_node_lookup(const char* nodename);
79
80 /**
81 * Query the registry for all nodes allocated to a specific job
82 */
83 ORTE_DECLSPEC int orte_ras_base_node_query_alloc(opal_list_t*, orte_jobid_t);
84
85 ORTE_DECLSPEC int orte_ras_base_proc_query_alloc(opal_list_t* procs);
86
87 /**
88 * Add the specified node definitions to the registry
89 */
90 ORTE_DECLSPEC int orte_ras_base_node_insert(opal_list_t*);
91
92 ORTE_DECLSPEC int orte_ras_base_proc_insert(opal_list_t* procs, orte_jobid_t jobid);
93
94 /**
95 * Delete the specified nodes from the registry
96 */
97 ORTE_DECLSPEC int orte_ras_base_node_delete(opal_list_t*);
98
99 /**
100 * Assign the allocated slots on the specified nodes to the
101 * indicated jobid.
102 */
103 ORTE_DECLSPEC int orte_ras_base_node_assign(opal_list_t*, orte_jobid_t);
104
105 /**
106 * Check to see if the node segment is empty
107 */
108 ORTE_DECLSPEC int orte_ras_base_node_segment_empty(bool *empty);
109
110 #endif
111
112 END_C_DECLS
113
114 #endif
orte_jobid_t
uint32_t orte_jobid_t
Set the allowed range for ids in each space.
Definition: types.h:76
base.h
orte_ras_base_node_insert
ORTE_DECLSPEC int orte_ras_base_node_insert(opal_list_t *, orte_job_t *)
Add the specified node definitions to the registry.
Definition: ras_base_node.c:62
opal_list.h
The opal_list_t interface is used to provide a generic doubly-linked list container for Open MPI...
ras.h
The Open RTE Resource Allocation Subsystem (RAS)
types.h
orte_job_t
Definition: orte_globals.h:316
opal_list_t
Definition: opal_list.h:147