#ifndef MAM_CONSTANTS_H #define MAM_CONSTANTS_H //States #define MALL_DENIED -1 #define MAM_OK 0 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}; enum mall_spawn_methods{MALL_SPAWN_BASELINE, MALL_SPAWN_MERGE, MAM_METHODS_SPAWN_LEN}; 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}; enum mam_phy_dist_methods{MALL_DIST_SPREAD = 1, MALL_DIST_COMPACT, MAM_METHODS_PHYSICAL_DISTRIBUTION_LEN}; //FIXME Cambiar nombres a PHY_DIST? enum mam_phy_info_methods{MALL_DIST_STRING = 1, MALL_DIST_HOSTFILE}; //FIXME Cambiar nombres a PHY_DIST? enum mall_redistribution_methods{MALL_RED_BASELINE, MALL_RED_POINT, MALL_RED_RMA_LOCK, MALL_RED_RMA_LOCKALL, MAM_METHODS_RED_LEN}; 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}; /* KEYS & VALUES for config*/ 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" #define MALLEABILITY_ROOT 0 #define MAL_APP_EXECUTING 0 #define MAL_APP_ENDED 1 #define MAM_CHECK_COMPLETION 0 #define MAM_WAIT_COMPLETION 1 #define MALLEABILITY_CHILDREN 1 #define MALLEABILITY_NOT_CHILDREN 0 #define MAM_DATA_DISTRIBUTED 0 #define MAM_DATA_REPLICATED 1 #define MAM_DATA_VARIABLE 0 #define MAM_DATA_CONSTANT 1 #endif