diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2013-10-28 16:37:04 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2013-10-28 16:37:04 +0000 |
commit | 9b7b8af742d70dd464792005b79f1cc920be3f98 (patch) | |
tree | f94319a7ad74b6dea36a739bf6cabff3842e56f4 | |
parent | 3a1840526c17073726febbfd2b9cc19f859c9e08 (diff) | |
download | gnunet-9b7b8af742d70dd464792005b79f1cc920be3f98.tar.gz gnunet-9b7b8af742d70dd464792005b79f1cc920be3f98.zip |
next step for generic solver test
-rw-r--r-- | src/ats/Makefile.am | 6 | ||||
-rw-r--r-- | src/ats/perf_ats_solver.c | 64 | ||||
-rw-r--r-- | src/ats/perf_ats_solver_mlp.conf | 0 | ||||
-rw-r--r-- | src/ats/perf_ats_solver_proportional.conf | 0 | ||||
-rw-r--r-- | src/ats/perf_ats_solver_ril.conf | 0 |
5 files changed, 63 insertions, 7 deletions
diff --git a/src/ats/Makefile.am b/src/ats/Makefile.am index 13e38ab27..fe1854394 100644 --- a/src/ats/Makefile.am +++ b/src/ats/Makefile.am | |||
@@ -26,6 +26,7 @@ if HAVE_LIBGLPK | |||
26 | GN_MLP_REQUEST_ADD_ADDRESS = test_ats_solver_request_and_add_address_mlp | 26 | GN_MLP_REQUEST_ADD_ADDRESS = test_ats_solver_request_and_add_address_mlp |
27 | GN_MLP_REQUEST_DELETE_ADDRESS = test_ats_solver_request_and_delete_address_mlp | 27 | GN_MLP_REQUEST_DELETE_ADDRESS = test_ats_solver_request_and_delete_address_mlp |
28 | GN_MLP_ALTERNATIVE_DELETE_ADDRESS = test_ats_solver_alternative_after_delete_address_mlp | 28 | GN_MLP_ALTERNATIVE_DELETE_ADDRESS = test_ats_solver_alternative_after_delete_address_mlp |
29 | GN_MLP_SOLVER_PERF = perf_ats_solver_mlp | ||
29 | endif | 30 | endif |
30 | 31 | ||
31 | lib_LTLIBRARIES = libgnunetats.la | 32 | lib_LTLIBRARIES = libgnunetats.la |
@@ -131,7 +132,10 @@ TESTING_TESTS = \ | |||
131 | test_ats_solver_add_address_and_request_ril \ | 132 | test_ats_solver_add_address_and_request_ril \ |
132 | test_ats_solver_request_and_add_address_ril \ | 133 | test_ats_solver_request_and_add_address_ril \ |
133 | test_ats_solver_request_and_delete_address_ril \ | 134 | test_ats_solver_request_and_delete_address_ril \ |
134 | test_ats_solver_alternative_after_delete_address_ril | 135 | test_ats_solver_alternative_after_delete_address_ril \ |
136 | perf_ats_solver_proportional \ | ||
137 | $(GN_MLP_SOLVER_PERF) \ | ||
138 | perf_ats_solver_ril | ||
135 | endif | 139 | endif |
136 | 140 | ||
137 | check_PROGRAMS = \ | 141 | check_PROGRAMS = \ |
diff --git a/src/ats/perf_ats_solver.c b/src/ats/perf_ats_solver.c index ae3eb2b61..3b03f44c7 100644 --- a/src/ats/perf_ats_solver.c +++ b/src/ats/perf_ats_solver.c | |||
@@ -28,8 +28,7 @@ | |||
28 | #include "gnunet_util_lib.h" | 28 | #include "gnunet_util_lib.h" |
29 | #include "gnunet_statistics_service.h" | 29 | #include "gnunet_statistics_service.h" |
30 | #include "gnunet_ats_service.h" | 30 | #include "gnunet_ats_service.h" |
31 | #include "gnunet-service-ats-solver_mlp.h" | 31 | #include "gnunet_ats_plugin.h" |
32 | #include "gnunet-service-ats_normalization.h" | ||
33 | #include "test_ats_api_common.h" | 32 | #include "test_ats_api_common.h" |
34 | 33 | ||
35 | #define PEERS_START 100 | 34 | #define PEERS_START 100 |
@@ -77,7 +76,7 @@ struct GNUNET_CONTAINER_MultiHashMap * addresses; | |||
77 | struct GNUNET_ATS_Information ats[2]; | 76 | struct GNUNET_ATS_Information ats[2]; |
78 | 77 | ||
79 | struct PerfPeer *peers; | 78 | struct PerfPeer *peers; |
80 | 79 | #if 0 | |
81 | static void | 80 | static void |
82 | end_now (int res) | 81 | end_now (int res) |
83 | { | 82 | { |
@@ -240,11 +239,14 @@ update_addresses (unsigned int cp, unsigned int ca, unsigned int up_q) | |||
240 | } | 239 | } |
241 | } | 240 | } |
242 | } | 241 | } |
242 | #endif | ||
243 | |||
243 | 244 | ||
244 | static void | 245 | static void |
245 | check (void *cls, char * const *args, const char *cfgfile, | 246 | check (void *cls, char * const *args, const char *cfgfile, |
246 | const struct GNUNET_CONFIGURATION_Handle *cfg) | 247 | const struct GNUNET_CONFIGURATION_Handle *cfg) |
247 | { | 248 | { |
249 | #if 0 | ||
248 | int quotas[GNUNET_ATS_NetworkTypeCount] = GNUNET_ATS_NetworkType; | 250 | int quotas[GNUNET_ATS_NetworkTypeCount] = GNUNET_ATS_NetworkType; |
249 | unsigned long long quotas_in[GNUNET_ATS_NetworkTypeCount]; | 251 | unsigned long long quotas_in[GNUNET_ATS_NetworkTypeCount]; |
250 | unsigned long long quotas_out[GNUNET_ATS_NetworkTypeCount]; | 252 | unsigned long long quotas_out[GNUNET_ATS_NetworkTypeCount]; |
@@ -427,14 +429,19 @@ check (void *cls, char * const *args, const char *cfgfile, | |||
427 | 429 | ||
428 | } | 430 | } |
429 | GNUNET_free(peers); | 431 | GNUNET_free(peers); |
430 | 432 | #endif | |
431 | } | 433 | } |
432 | 434 | ||
433 | int | 435 | int |
434 | main (int argc, char *argv[]) | 436 | main (int argc, char *argv[]) |
435 | { | 437 | { |
438 | char *sep; | ||
439 | char *src_filename = GNUNET_strdup (__FILE__); | ||
440 | char *test_filename = GNUNET_strdup (argv[0]); | ||
441 | char *config_file; | ||
442 | char *solver; | ||
436 | 443 | ||
437 | static char * const argv2[] = { "perf_ats_mlp", "-c", "test_ats_mlp.conf", | 444 | static char * const argv2[] = { "perf_ats_mlp", "-c", "perf_ats_mlp.conf", |
438 | "-L", "WARNING", NULL }; | 445 | "-L", "WARNING", NULL }; |
439 | 446 | ||
440 | opt_dump = GNUNET_NO; | 447 | opt_dump = GNUNET_NO; |
@@ -445,6 +452,7 @@ main (int argc, char *argv[]) | |||
445 | N_peers_end = 0; | 452 | N_peers_end = 0; |
446 | N_address = 0; | 453 | N_address = 0; |
447 | int c; | 454 | int c; |
455 | /* extract command line arguments */ | ||
448 | for (c = 0; c < argc; c++) | 456 | for (c = 0; c < argc; c++) |
449 | { | 457 | { |
450 | if ((0 == strcmp (argv[c], "-z")) && (c < (argc - 1))) | 458 | if ((0 == strcmp (argv[c], "-z")) && (c < (argc - 1))) |
@@ -520,11 +528,55 @@ main (int argc, char *argv[]) | |||
520 | exit (1); | 528 | exit (1); |
521 | } | 529 | } |
522 | 530 | ||
531 | /* Extract test name */ | ||
532 | if (NULL == (sep = (strstr (src_filename,".c")))) | ||
533 | { | ||
534 | GNUNET_break (0); | ||
535 | return -1; | ||
536 | } | ||
537 | sep[0] = '\0'; | ||
538 | |||
539 | if (NULL != (sep = strstr (test_filename, ".exe"))) | ||
540 | sep[0] = '\0'; | ||
541 | |||
542 | if (NULL == (solver = strstr (test_filename, src_filename))) | ||
543 | { | ||
544 | GNUNET_break (0); | ||
545 | return -1; | ||
546 | } | ||
547 | solver += strlen (src_filename) +1; | ||
548 | |||
549 | if (0 == strcmp(solver, "proportional")) | ||
550 | { | ||
551 | config_file = "perf_ats_solver_proportional.conf"; | ||
552 | } | ||
553 | else if (0 == strcmp(solver, "mlp")) | ||
554 | { | ||
555 | config_file = "perf_ats_solver_mlp.conf"; | ||
556 | } | ||
557 | else if ((0 == strcmp(solver, "ril"))) | ||
558 | { | ||
559 | config_file = "perf_ats_solver_ril.conf"; | ||
560 | } | ||
561 | else | ||
562 | { | ||
563 | GNUNET_break (0); | ||
564 | GNUNET_free (src_filename); | ||
565 | GNUNET_free (test_filename); | ||
566 | return 1; | ||
567 | } | ||
568 | |||
569 | GNUNET_free (src_filename); | ||
570 | GNUNET_free (test_filename); | ||
571 | |||
572 | fprintf (stderr, "Using cfg file `%s'\n",config_file); | ||
573 | return 0; | ||
574 | |||
523 | static const struct GNUNET_GETOPT_CommandLineOption options[] = { | 575 | static const struct GNUNET_GETOPT_CommandLineOption options[] = { |
524 | GNUNET_GETOPT_OPTION_END }; | 576 | GNUNET_GETOPT_OPTION_END }; |
525 | 577 | ||
526 | GNUNET_PROGRAM_run ((sizeof(argv2) / sizeof(char *)) - 1, argv2, | 578 | GNUNET_PROGRAM_run ((sizeof(argv2) / sizeof(char *)) - 1, argv2, |
527 | "perf_ats_mlp", "nohelp", options, &check, NULL ); | 579 | "perf_ats", "nohelp", options, &check, NULL ); |
528 | 580 | ||
529 | return ret; | 581 | return ret; |
530 | } | 582 | } |
diff --git a/src/ats/perf_ats_solver_mlp.conf b/src/ats/perf_ats_solver_mlp.conf new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/src/ats/perf_ats_solver_mlp.conf | |||
diff --git a/src/ats/perf_ats_solver_proportional.conf b/src/ats/perf_ats_solver_proportional.conf new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/src/ats/perf_ats_solver_proportional.conf | |||
diff --git a/src/ats/perf_ats_solver_ril.conf b/src/ats/perf_ats_solver_ril.conf new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/src/ats/perf_ats_solver_ril.conf | |||