#include "idag_defs.h" #include "variables.h" void global_idag_defs(void) { #ifdef NO_ISLANDS return; #endif #ifdef LOW_VOLTAGE_0 low_voltage_core[0] = 1; low_voltage_core[1] = 1; low_voltage_core[2] = 1; low_voltage_core[3] = 1; low_voltage_core[12] = 1; low_voltage_core[13] = 1; low_voltage_core[14] = 1; low_voltage_core[15] = 1; #endif #ifdef LOW_VOLTAGE_1 low_voltage_core[4] = 1; low_voltage_core[5] = 1; low_voltage_core[6] = 1; low_voltage_core[7] = 1; low_voltage_core[16] = 1; low_voltage_core[17] = 1; low_voltage_core[18] = 1; low_voltage_core[19] = 1; #endif #ifdef LOW_VOLTAGE_2 low_voltage_core[8] = 1; low_voltage_core[9] = 1; low_voltage_core[10] = 1; low_voltage_core[11] = 1; low_voltage_core[20] = 1; low_voltage_core[21] = 1; low_voltage_core[22] = 1; low_voltage_core[23] = 1; #endif #ifdef LOW_VOLTAGE_3 low_voltage_core[24] = 1; low_voltage_core[25] = 1; low_voltage_core[26] = 1; low_voltage_core[27] = 1; low_voltage_core[36] = 1; low_voltage_core[37] = 1; low_voltage_core[38] = 1; low_voltage_core[39] = 1; #endif #ifdef LOW_VOLTAGE_4 low_voltage_core[28] = 1; low_voltage_core[29] = 1; low_voltage_core[30] = 1; low_voltage_core[31] = 1; low_voltage_core[40] = 1; low_voltage_core[41] = 1; low_voltage_core[42] = 1; low_voltage_core[43] = 1; #endif #ifdef LOW_VOLTAGE_5 low_voltage_core[32] = 1; low_voltage_core[33] = 1; low_voltage_core[34] = 1; low_voltage_core[35] = 1; low_voltage_core[44] = 1; low_voltage_core[45] = 1; low_voltage_core[46] = 1; low_voltage_core[47] = 1; #endif } void read_idag_defs(char scen_directory[SCEN_DIR_SIZE], char scen_num[SCEN_NUM_SIZE], char idag_defs_file_name[SCEN_NUM_SIZE], char paxos_scen[PAXOS_SCEN_SIZE]) { int i, j, cnt, core_index, time; char paxos_path[MAX_STR_NAME_SIZE]; FILE *paxos_conf_file; /* Simulating centralized approach. Controller core is 0 */ #ifdef SINGLE_IDAG num_idags = 1; idag_id_arr = (int *) malloc(num_idags * sizeof(int)); idag_id_arr[0] = 0; for (i=0; i= 0; i -= 2*X_max) { for (j = i; j < i+2*X_max-1; j+=2){ //printf("%d | ",j+1); fscanf(idag_defs_file, "%d", &idag_mask[j+1]); } //printf("\n"); for (j = i; j < i+2*X_max-1; j+=2){ //printf("%d | ",j); fscanf(idag_defs_file, "%d", &idag_mask[j]); } //printf("\n"); } for (i=0;i = 0; i -= 2*X_max){ for (j = i; j < i+2*X_max-1; j+=2){ for (k = 0; k < num_idags; k++){ if (idag_mask[j+1] == idag_id_arr[k]){ if (k == 0){ printf("%s%d\t",KRED,j+1); fflush(stdout); } else if (k == 1){ printf("%s%d\t",KGRN,j+1); fflush(stdout); } else if (k == 2){ printf("%s%d\t",KBLU,j+1); fflush(stdout); } else if (k == 3){ printf("%s%d\t",KYEL,j+1); fflush(stdout); } else if (k == 4){ printf("%s%d\t",KMAG,j+1); fflush(stdout); } else if (k == 5){ printf("%s%d\t",KCYN,j+1); fflush(stdout); } else if (k == 6){ printf("%s%d\t",KWHT,j+1); fflush(stdout); } else if (k == 7){ printf("%s%d\t",KBLK,j+1); fflush(stdout); } } } } printf("\n"); for (j = i; j < i+2*X_max-1; j+=2){ for (k = 0; k < num_idags; k++){ if (idag_mask[j] == idag_id_arr[k]){ if (k == 0){ printf("%s%d\t",KRED,j); fflush(stdout); } else if (k == 1){ printf("%s%d\t",KGRN,j); fflush(stdout); } else if (k == 2){ printf("%s%d\t",KBLU,j); fflush(stdout); } else if (k == 3){ printf("%s%d\t",KYEL,j); fflush(stdout); } else if (k == 4){ printf("%s%d\t",KMAG,j+1); fflush(stdout); } else if (k == 5){ printf("%s%d\t",KCYN,j+1); fflush(stdout); } else if (k == 6){ printf("%s%d\t",KWHT,j+1); fflush(stdout); } else if (k == 7){ printf("%s%d\t",KBLK,j+1); fflush(stdout); } } } } printf("%s\n",KNRM); } for (i = 0; i < 4*X_max; i++) printf("%s=",KMAG); printf("%s GRID ",KMAG); for (i = 0; i < 4*X_max; i++) printf("%s=",KMAG); printf("%s\n",KNRM); } int is_core_idag (int core_id) { int i, is_idag = 0; for (i=0; i