diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2013-10-30 14:14:40 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2013-10-30 14:14:40 +0000 |
commit | 36c0c77784da93f5bb5b5787cdbfcc71506fb39e (patch) | |
tree | 5fec44a1219a3c9be8b3c58ddd5b541fc3bebad3 /src/ats/perf_ats_solver.c | |
parent | 2d9a0e6fda15a70eb87ca3a1e5b8088f440b8adb (diff) | |
download | gnunet-36c0c77784da93f5bb5b5787cdbfcc71506fb39e.tar.gz gnunet-36c0c77784da93f5bb5b5787cdbfcc71506fb39e.zip |
implemented solver information callbacks for benchmarking
Diffstat (limited to 'src/ats/perf_ats_solver.c')
-rw-r--r-- | src/ats/perf_ats_solver.c | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/ats/perf_ats_solver.c b/src/ats/perf_ats_solver.c index 5a229756b..f2762baba 100644 --- a/src/ats/perf_ats_solver.c +++ b/src/ats/perf_ats_solver.c | |||
@@ -64,6 +64,9 @@ struct PerfHandle | |||
64 | int opt_update_percent; | 64 | int opt_update_percent; |
65 | int opt_update_quantity; | 65 | int opt_update_quantity; |
66 | 66 | ||
67 | /** | ||
68 | * Is a bulk operation running? | ||
69 | */ | ||
67 | int bulk_running; | 70 | int bulk_running; |
68 | 71 | ||
69 | char *ats_string; | 72 | char *ats_string; |
@@ -308,6 +311,56 @@ perf_create_address (int cp, int ca) | |||
308 | } | 311 | } |
309 | 312 | ||
310 | static void | 313 | static void |
314 | solver_info_cb (void *cls, | ||
315 | enum GAS_Solver_Operation op, enum GAS_Solver_Status stat) | ||
316 | { | ||
317 | switch (op) { | ||
318 | case GAS_OP_SOLVE_START: | ||
319 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
320 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_START", | ||
321 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
322 | break; | ||
323 | case GAS_OP_SOLVE_STOP: | ||
324 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
325 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_STOP", | ||
326 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
327 | break; | ||
328 | case GAS_OP_SOLVE_SETUP_START: | ||
329 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
330 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_SETUP_START", | ||
331 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
332 | break; | ||
333 | case GAS_OP_SOLVE_SETUP_STOP: | ||
334 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
335 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_SETUP_STOP", | ||
336 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
337 | break; | ||
338 | case GAS_OP_SOLVE_LP_START: | ||
339 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
340 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_LP_START", | ||
341 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
342 | break; | ||
343 | case GAS_OP_SOLVE_LP_STOP: | ||
344 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
345 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_LP_STOP", | ||
346 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
347 | break; | ||
348 | case GAS_OP_SOLVE_MLP_START: | ||
349 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
350 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_MLP_START", | ||
351 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
352 | break; | ||
353 | case GAS_OP_SOLVE_MLP_STOP: | ||
354 | GNUNET_log(GNUNET_ERROR_TYPE_INFO, | ||
355 | "Solver notifies `%s' with result `%s'\n", "GAS_OP_SOLVE_MLP_STOP", | ||
356 | (GAS_STAT_SUCCESS == stat) ? "SUCCESS" : "FAIL"); | ||
357 | break; | ||
358 | default: | ||
359 | break; | ||
360 | } | ||
361 | } | ||
362 | |||
363 | static void | ||
311 | perf_run () | 364 | perf_run () |
312 | { | 365 | { |
313 | struct ATS_Address *cur; | 366 | struct ATS_Address *cur; |
@@ -514,6 +567,9 @@ run (void *cls, char * const *args, const char *cfgfile, | |||
514 | ph.env.get_preferences = &get_preferences_cb; | 567 | ph.env.get_preferences = &get_preferences_cb; |
515 | ph.env.get_property = &get_property_cb; | 568 | ph.env.get_property = &get_property_cb; |
516 | ph.env.network_count = GNUNET_ATS_NetworkTypeCount; | 569 | ph.env.network_count = GNUNET_ATS_NetworkTypeCount; |
570 | ph.env.info_cb = &solver_info_cb; | ||
571 | ph.env.info_cb_cls = NULL; | ||
572 | |||
517 | int networks[GNUNET_ATS_NetworkTypeCount] = GNUNET_ATS_NetworkType; | 573 | int networks[GNUNET_ATS_NetworkTypeCount] = GNUNET_ATS_NetworkType; |
518 | for (c = 0; c < GNUNET_ATS_NetworkTypeCount; c++) | 574 | for (c = 0; c < GNUNET_ATS_NetworkTypeCount; c++) |
519 | { | 575 | { |