OpenMPI 0.1.1

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

- File List
- Globals

nidmap.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) 2004-2008 The Trustees of Indiana University and Indiana
3 * University Research and Technology
4 * Corporation. All rights reserved.
5 * Copyright (c) 2004-2011 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$
13 *
14 * Additional copyrights may follow
15 *
16 * $HEADER$
17 */
18
19 /** @file:
20 *
21 * Populates global structure with system-specific information.
22 *
23 * Notes: add limits.h, compute size of integer and other types via sizeof(type)*CHAR_BIT
24 *
25 */
26
27 #ifndef _ORTE_NIDMAP_H_
28 #define _ORTE_NIDMAP_H_
29
30 #include "orte_config.h"
31 #include "orte/types.h"
32
33 #include "opal/dss/dss_types.h"
34
35 #include "orte/runtime/orte_globals.h"
36
37 BEGIN_C_DECLS
38
39 #define ORTE_MAX_NODE_PREFIX 50
40 #define ORTE_CONTIG_NODE_CMD 0x01
41 #define ORTE_NON_CONTIG_NODE_CMD 0x02
42
43 ORTE_DECLSPEC int orte_util_nidmap_init(opal_buffer_t *buffer);
44 ORTE_DECLSPEC void orte_util_nidmap_finalize(void);
45 ORTE_DECLSPEC int orte_util_setup_local_nidmap_entries(void);
46
47 ORTE_DECLSPEC orte_jmap_t* orte_util_lookup_jmap(orte_jobid_t job);
48 ORTE_DECLSPEC orte_pmap_t* orte_util_lookup_pmap(orte_process_name_t *proc);
49 ORTE_DECLSPEC orte_nid_t* orte_util_lookup_nid(orte_process_name_t *proc);
50
51 #if ORTE_ENABLE_EPOCH
52 ORTE_DECLSPEC orte_epoch_t orte_util_lookup_epoch(orte_process_name_t *proc);
53 ORTE_DECLSPEC orte_epoch_t orte_util_set_epoch(orte_process_name_t *proc, orte_epoch_t epoch);
54 #endif
55
56 ORTE_DECLSPEC int orte_util_set_proc_state(orte_process_name_t *proc, orte_proc_state_t state);
57
58 #if ORTE_RESIL_ORTE
59 #define PROC_IS_RUNNING(n) orte_util_proc_is_running(n)
60 ORTE_DECLSPEC bool orte_util_proc_is_running(orte_process_name_t *proc);
61 #else
62 #define PROC_IS_RUNNING(n) ( true )
63 #endif
64
65 ORTE_DECLSPEC int orte_util_encode_nodemap(opal_byte_object_t *boptr);
66 ORTE_DECLSPEC int orte_util_decode_nodemap(opal_byte_object_t *boptr);
67
68 ORTE_DECLSPEC int orte_util_encode_pidmap(opal_byte_object_t *boptr);
69 ORTE_DECLSPEC int orte_util_decode_pidmap(opal_byte_object_t *boptr);
70
71 ORTE_DECLSPEC int orte_util_build_daemon_nidmap(char **nodes);
72
73 ORTE_DECLSPEC void orte_nidmap_dump(void);
74 ORTE_DECLSPEC void orte_jmap_dump(orte_jmap_t *jmap);
75 ORTE_DECLSPEC void orte_jobmap_dump(void);
76
77 END_C_DECLS
78
79 /* Local functions */
80 #if ORTE_ENABLE_EPOCH
81 orte_epoch_t get_epoch_from_orte_job_data(orte_process_name_t *proc, orte_epoch_t epoch);
82 #endif
83
84 #endif
orte_jobid_t
uint32_t orte_jobid_t
Set the allowed range for ids in each space.
Definition: types.h:76
orte_process_name_t
Definition: types.h:146
orte_jmap_t
Definition: orte_globals.h:490
types.h
orte_nid_t
Definition: orte_globals.h:462
dss_types.h
Buffer management types.
orte_globals.h
Global params for OpenRTE.
opal_buffer_t
Structure for holding a buffer to be used with the RML or OOB subsystems.
Definition: dss_types.h:159
opal_byte_object_t
Definition: dss_types.h:47
orte_pmap_t
Definition: orte_globals.h:476