Files
@ cd546710a6c9
Branch filter:
Location: CSY/reowolf/examples/bench_09/main.c - annotation
cd546710a6c9
1.2 KiB
text/x-csrc
WIP on type inference: finishing linker part
3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 3adc38e5fd32 | #include <time.h>
#include "../../reowolf.h"
#include "../utility.c"
int main(int argc, char** argv) {
int i, proto_components;
proto_components = atoi(argv[1]);
printf("proto_components: %d\n", proto_components);
const unsigned char pdl[] =
"primitive presync_work() { "
" int i = 0; "
" while(true) { "
" i = 0; "
" while(i < 2) i++; "
" synchronous {} "
" } "
"} "
;
Arc_ProtocolDescription * pd = protocol_description_parse(pdl, sizeof(pdl)-1);
char logpath[] = "./bench_4.txt";
Connector * c = connector_new_logging(pd, logpath, sizeof(logpath)-1);
for (i=0; i<proto_components; i++) {
char ident[] = "presync_work";
connector_add_component(c, ident, sizeof(ident)-1, NULL, 0);
printf("Error str `%s`\n", reowolf_error_peek(NULL));
}
connector_connect(c, -1);
printf("Error str `%s`\n", reowolf_error_peek(NULL));
clock_t begin = clock();
for (i=0; i<1000000; i++) {
connector_sync(c, -1);
}
clock_t end = clock();
double time_spent = (double)(end - begin) / CLOCKS_PER_SEC;
printf("Time taken: %f\n", time_spent);
return 0;
}
|