MAM_Constants.h 1.88 KB
Newer Older
1
2
#ifndef MAM_CONSTANTS_H
#define MAM_CONSTANTS_H
3

4
//States
5
#define MAM_DENIED -1
6
#define MAM_OK 0
7

8
9
enum mam_states{MAM_UNRESERVED, MAM_NOT_STARTED, MAM_PENDING, MAM_USER_PENDING, MAM_COMPLETED};
enum mam_proc_states{MAM_PROC_CONTINUE, MAM_PROC_NEW_RANK, MAM_PROC_ZOMBIE};
10

11
enum mam_spawn_methods{MAM_SPAWN_BASELINE, MAM_SPAWN_MERGE, MAM_METHODS_SPAWN_LEN};
12
enum mam_spawn_strategies{MAM_STRAT_SPAWN_CLEAR, MAM_STRAT_SPAWN_PTHREAD, MAM_STRAT_SPAWN_SINGLE, MAM_STRAT_SPAWN_INTERCOMM, MAM_STRAT_SPAWN_MULTIPLE, MAM_STRATS_SPAWN_LEN};
13

14
15
enum mam_phy_dist_methods{MAM_PHY_DIST_SPREAD = 1, MAM_PHY_DIST_COMPACT, MAM_METHODS_PHYSICAL_DISTRIBUTION_LEN};
enum mam_phy_info_methods{MAM_PHY_TYPE_STRING = 1, MAM_PHY_TYPE_HOSTFILE};
16

17
enum mam_redistribution_methods{MAM_RED_BASELINE, MAM_RED_POINT, MAM_RED_RMA_LOCK, MAM_RED_RMA_LOCKALL, MAM_METHODS_RED_LEN};
18
enum mam_red_strategies{MAM_STRAT_RED_CLEAR, MAM_STRAT_RED_PTHREAD, MAM_STRAT_RED_WAIT_SOURCES, MAM_STRAT_RED_WAIT_TARGETS, MAM_STRATS_RED_LEN};
19

20
/* KEYS & VALUES for config*/
21
22
23
24
25
26
27
enum mam_key_values{MAM_SPAWN_METHOD=0, MAM_SPAWN_STRATEGIES, MAM_PHYSICAL_DISTRIBUTION, MAM_RED_METHOD, MAM_RED_STRATEGIES, MAM_NUM_TARGETS, MAM_KEY_COUNT};
#define MAM_SPAWN_METHOD_ENV                 "MAM_SPAWN_METHOD"
#define MAM_SPAWN_STRATS_ENV                 "MAM_SPAWN_STRATS"
#define MAM_PHYSICAL_DISTRIBUTION_METHOD_ENV "MAM_PHYSICAL_DISTRIBUTION_METHOD"
#define MAM_RED_METHOD_ENV                   "MAM_RED_METHOD"
#define MAM_RED_STRATS_ENV                   "MAM_RED_STRATS"
#define MAM_NUM_TARGETS_ENV                  "MAM_NUM_TARGETS"
28

29
30
31
#define MAM_CHECK_COMPLETION 0
#define MAM_WAIT_COMPLETION 1

32
33
#define MAM_SOURCES 0
#define MAM_TARGETS 1
34

35
36
37
38
39
#define MAM_DATA_DISTRIBUTED 0
#define MAM_DATA_REPLICATED 1
#define MAM_DATA_VARIABLE 0
#define MAM_DATA_CONSTANT 1

40
41
42
43
// Tags for messages in spawn strategies
#define MAM_MPITAG_STRAT_SINGLE 130
#define MAM_MPITAG_STRAT_MULTIPLE 131

44
#endif