OpenMPI  0.1.1
rmaps_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-2005 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) 2011 Cisco Systems, Inc. All rights reserved.
13  * $COPYRIGHT$
14  *
15  * Additional copyrights may follow
16  *
17  * $HEADER$
18  */
19 /** @file:
20  */
21 
22 #ifndef ORTE_MCA_RMAPS_PRIVATE_H
23 #define ORTE_MCA_RMAPS_PRIVATE_H
24 
25 /*
26  * includes
27  */
28 #include "orte_config.h"
29 #include "orte/types.h"
30 
32 
33 #include "orte/mca/rmaps/rmaps.h"
34 
35 BEGIN_C_DECLS
36 
37 /*
38  * Base API functions
39  */
40 
41 /*
42  * Map a job
43  * All calls to rmaps.map_job are routed through this function. This allows callers to
44  * the RMAPS framework to specify the particular mapper they wish to use.
45  */
46 ORTE_DECLSPEC int orte_rmaps_base_map_job(orte_job_t *jdata);
47 ORTE_DECLSPEC orte_job_map_t* orte_rmaps_base_get_job_map(orte_jobid_t job);
48 
49 
50 /* LOCAL FUNCTIONS for use by RMAPS components */
51 
52 ORTE_DECLSPEC int orte_rmaps_base_get_target_nodes(opal_list_t* node_list,
53  orte_std_cntr_t *total_num_slots,
54  orte_app_context_t *app,
55  orte_mapping_policy_t policy,
56  bool initial_map);
57 
58 ORTE_DECLSPEC orte_proc_t* orte_rmaps_base_setup_proc(orte_job_t *jdata,
59  orte_node_t *node,
60  orte_app_idx_t idx);
61 
62 ORTE_DECLSPEC orte_node_t* orte_rmaps_base_get_starting_point(opal_list_t *node_list,
63  orte_job_t *jdata);
64 
65 ORTE_DECLSPEC int orte_rmaps_base_compute_vpids(orte_job_t *jdata,
66  orte_app_context_t *app,
67  opal_list_t *nodes);
68 
69 ORTE_DECLSPEC int orte_rmaps_base_compute_local_ranks(orte_job_t *jdata);
70 
71 ORTE_DECLSPEC int orte_rmaps_base_compute_bindings(orte_job_t *jdata);
72 
73 ORTE_DECLSPEC void orte_rmaps_base_update_local_ranks(orte_job_t *jdata, orte_node_t *oldnode,
74  orte_node_t *newnode, orte_proc_t *newproc);
75 
76 ORTE_DECLSPEC int orte_rmaps_base_rearrange_map(orte_app_context_t *app, orte_job_map_t *map, opal_list_t *procs);
77 
78 END_C_DECLS
79 
80 #endif
Information about a specific application to be launched in the RTE.
Definition: orte_globals.h:196
The Open RTE Resource MAPping Subsystem (RMAPS)
uint32_t orte_jobid_t
Set the allowed range for ids in each space.
Definition: types.h:76
ORTE_DECLSPEC int orte_rmaps_base_get_target_nodes(opal_list_t *node_list, orte_std_cntr_t *total_num_slots, orte_app_context_t *app, orte_mapping_policy_t policy, bool initial_map)
Definition: rmaps_base_support_fns.c:123
int32_t orte_std_cntr_t
Supported datatypes for messaging and storage operations.
Definition: types.h:34
Definition: orte_globals.h:386
Definition: orte_globals.h:316
Definition: opal_list.h:147
Definition: rmaps_types.h:47
Global params for OpenRTE.
Definition: orte_globals.h:254