60 |
|
|
61 |
extern char * valid_bms[NUM_BMS]; |
extern char * valid_bms[NUM_BMS]; |
62 |
extern upc_op_t reduce_op; |
extern upc_op_t reduce_op; |
63 |
|
extern uint64_t timeLimit; |
64 |
|
|
65 |
long maxsize, minsize; |
long maxsize, minsize; |
66 |
|
|
68 |
Set benchmarks names |
Set benchmarks names |
69 |
*/ |
*/ |
70 |
void set_bms_names(){ |
void set_bms_names(){ |
71 |
valid_bms[FORALL_R] = "upc_forall read"; |
valid_bms[FORALL_R] = "upc_forall_read"; |
72 |
valid_bms[FORALL_W] = "upc_forall write"; |
valid_bms[FORALL_W] = "upc_forall_write"; |
73 |
valid_bms[FORALL_RW] = "upc_forall read+write"; |
valid_bms[FORALL_RW] = "upc_forall_readwrite"; |
74 |
valid_bms[FOR_R] = "for read"; |
valid_bms[FOR_R] = "for_read"; |
75 |
valid_bms[FOR_W] = "for write"; |
valid_bms[FOR_W] = "for_write"; |
76 |
valid_bms[FOR_RW] = "for read+write"; |
valid_bms[FOR_RW] = "for_readwrite"; |
77 |
valid_bms[BARRIER] = "upc_barrier"; |
valid_bms[BARRIER] = "upc_barrier"; |
78 |
valid_bms[BROADCAST] = "upc_all_broadcast"; |
valid_bms[BROADCAST] = "upc_all_broadcast"; |
79 |
valid_bms[SCATTER] = "upc_all_scatter"; |
valid_bms[SCATTER] = "upc_all_scatter"; |
180 |
} |
} |
181 |
|
|
182 |
/* |
/* |
183 |
|
Set time limit |
184 |
|
*/ |
185 |
|
int set_time_limit(char *time_limit){ |
186 |
|
if(time_limit[0] >= '0' && time_limit[0] <= '9'){ |
187 |
|
errno = 0; |
188 |
|
timeLimit = strtol(time_limit,NULL,10); |
189 |
|
if(errno != 0){ |
190 |
|
if(MYTHREAD == 0){ |
191 |
|
fprintf(stderr,"*** Time limit (%s) not valid: ",time_limit); |
192 |
|
perror(NULL); |
193 |
|
} |
194 |
|
return -1; |
195 |
|
} |
196 |
|
} |
197 |
|
else{ |
198 |
|
if(MYTHREAD == 0){ |
199 |
|
fprintf(stderr,"*** Time limit (%s) not valid",time_limit); |
200 |
|
} |
201 |
|
return -1; |
202 |
|
} |
203 |
|
return 0; |
204 |
|
} |
205 |
|
|
206 |
|
/* |
207 |
Set reduce operation |
Set reduce operation |
208 |
*/ |
*/ |
209 |
int set_reduce_op(char *operation){ |
int set_reduce_op(char *operation){ |
606 |
int alternative_bm_list = 0; |
int alternative_bm_list = 0; |
607 |
minsize = MINSIZE; |
minsize = MINSIZE; |
608 |
maxsize = MAXSIZE; |
maxsize = MAXSIZE; |
609 |
|
extern int time_limit_set; |
610 |
|
int time_limit_set = 0; |
611 |
|
|
612 |
warmup = 0; // Defaults to off |
warmup = 0; // Defaults to off |
613 |
|
|
720 |
upc_barrier; |
upc_barrier; |
721 |
exit(-1); |
exit(-1); |
722 |
} |
} |
723 |
|
else if(strcmp(argv[i],"-time") == 0){ |
724 |
|
i++; |
725 |
|
if(i == argc){ |
726 |
|
if(MYTHREAD == 0) |
727 |
|
print_usage(argv[0]); |
728 |
|
exit(-1); |
729 |
|
} |
730 |
|
else{ |
731 |
|
if(set_time_limit(argv[i]) != 0){ |
732 |
|
if(MYTHREAD == 0) |
733 |
|
print_usage(argv[0]); |
734 |
|
exit(-1); |
735 |
|
} |
736 |
|
else{ |
737 |
|
time_limit_set = 1; |
738 |
|
} |
739 |
|
} |
740 |
|
} |
741 |
else{ |
else{ |
742 |
if(i == argc-1 && argv[i][0] != '-' ){ |
if(i == argc-1 && argv[i][0] != '-' ){ |
743 |
alternative_output_file = 1; |
alternative_output_file = 1; |