diff options
author | Omar Tarabai <tarabai@devegypt.com> | 2014-09-01 18:04:41 +0000 |
---|---|---|
committer | Omar Tarabai <tarabai@devegypt.com> | 2014-09-01 18:04:41 +0000 |
commit | f861dd18a5a9fc7a7862d74f68ef378e5d8f9d08 (patch) | |
tree | a6b3017dc9c664fe48154b291def683fd9426aa0 /src/sensor | |
parent | a93c09a284751a49a5e8ae18e55dcf9f253343df (diff) | |
download | gnunet-f861dd18a5a9fc7a7862d74f68ef378e5d8f9d08.tar.gz gnunet-f861dd18a5a9fc7a7862d74f68ef378e5d8f9d08.zip |
sensor: towards profiler
Diffstat (limited to 'src/sensor')
-rw-r--r-- | src/sensor/gnunet-sensor-profiler.c | 35 | ||||
-rw-r--r-- | src/sensor/sensor.conf.in | 2 |
2 files changed, 31 insertions, 6 deletions
diff --git a/src/sensor/gnunet-sensor-profiler.c b/src/sensor/gnunet-sensor-profiler.c index e89e0f025..10e0789e0 100644 --- a/src/sensor/gnunet-sensor-profiler.c +++ b/src/sensor/gnunet-sensor-profiler.c | |||
@@ -70,6 +70,11 @@ static const char *sensor_src_dir = "sensors"; | |||
70 | static const char *sensor_dst_dir = "/tmp/gnunet-sensor-profiler"; | 70 | static const char *sensor_dst_dir = "/tmp/gnunet-sensor-profiler"; |
71 | 71 | ||
72 | /** | 72 | /** |
73 | * GNUnet configuration | ||
74 | */ | ||
75 | struct GNUNET_CONFIGURATION_Handle *cfg; | ||
76 | |||
77 | /** | ||
73 | * Return value of the program | 78 | * Return value of the program |
74 | */ | 79 | */ |
75 | static int ok = 1; | 80 | static int ok = 1; |
@@ -150,6 +155,11 @@ do_shutdown (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) | |||
150 | int i; | 155 | int i; |
151 | 156 | ||
152 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Shutting down.\n"); | 157 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Shutting down.\n"); |
158 | if (NULL != cfg) | ||
159 | { | ||
160 | GNUNET_CONFIGURATION_destroy (cfg); | ||
161 | cfg = NULL; | ||
162 | } | ||
153 | if (NULL != sensor_names) | 163 | if (NULL != sensor_names) |
154 | { | 164 | { |
155 | for (i = 0; i < sensor_names_size; i++) | 165 | for (i = 0; i < sensor_names_size; i++) |
@@ -252,8 +262,8 @@ sensor_dir_scanner (void *cls, const char *filename) | |||
252 | GNUNET_CONFIGURATION_parse (sensor_cfg, filename)); | 262 | GNUNET_CONFIGURATION_parse (sensor_cfg, filename)); |
253 | GNUNET_CONFIGURATION_set_value_string (sensor_cfg, file_basename, | 263 | GNUNET_CONFIGURATION_set_value_string (sensor_cfg, file_basename, |
254 | "COLLECTION_POINT", | 264 | "COLLECTION_POINT", |
255 | GNUNET_i2s_full (&all_peers_info[0]. | 265 | GNUNET_i2s_full (&all_peers_info |
256 | peer_id)); | 266 | [0].peer_id)); |
257 | if (sensors_interval > 0) | 267 | if (sensors_interval > 0) |
258 | { | 268 | { |
259 | GNUNET_CONFIGURATION_set_value_number (sensor_cfg, file_basename, | 269 | GNUNET_CONFIGURATION_set_value_number (sensor_cfg, file_basename, |
@@ -418,7 +428,25 @@ peerstore_disconnect_adapter (void *cls, void *op_result) | |||
418 | static void | 428 | static void |
419 | peers_ready (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) | 429 | peers_ready (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) |
420 | { | 430 | { |
431 | unsigned long long int training_points; | ||
432 | struct GNUNET_TIME_Relative training_period; | ||
433 | |||
421 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "All peers are ready.\n"); | 434 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "All peers are ready.\n"); |
435 | GNUNET_assert (GNUNET_OK == | ||
436 | GNUNET_CONFIGURATION_get_value_number (cfg, | ||
437 | "sensor-model-gaussian", | ||
438 | "TRAINING_WINDOW", | ||
439 | &training_points)); | ||
440 | training_period = | ||
441 | GNUNET_TIME_relative_multiply (GNUNET_TIME_relative_multiply | ||
442 | (GNUNET_TIME_UNIT_SECONDS, | ||
443 | (sensors_interval == | ||
444 | 0) ? 60 : sensors_interval), | ||
445 | training_points); | ||
446 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | ||
447 | "Sleeping for a training period of %s.\n", | ||
448 | GNUNET_STRINGS_relative_time_to_string (training_period, | ||
449 | GNUNET_NO)); | ||
422 | //TODO | 450 | //TODO |
423 | } | 451 | } |
424 | 452 | ||
@@ -580,8 +608,6 @@ static void | |||
580 | run (void *cls, char *const *args, const char *cf, | 608 | run (void *cls, char *const *args, const char *cf, |
581 | const struct GNUNET_CONFIGURATION_Handle *c) | 609 | const struct GNUNET_CONFIGURATION_Handle *c) |
582 | { | 610 | { |
583 | struct GNUNET_CONFIGURATION_Handle *cfg; | ||
584 | |||
585 | if (GNUNET_OK != verify_args ()) | 611 | if (GNUNET_OK != verify_args ()) |
586 | { | 612 | { |
587 | do_shutdown (NULL, NULL); | 613 | do_shutdown (NULL, NULL); |
@@ -596,7 +622,6 @@ run (void *cls, char *const *args, const char *cf, | |||
596 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, &do_shutdown, | 622 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, &do_shutdown, |
597 | NULL); | 623 | NULL); |
598 | GNUNET_TESTBED_run (NULL, cfg, num_peers, 0, NULL, NULL, &test_master, NULL); | 624 | GNUNET_TESTBED_run (NULL, cfg, num_peers, 0, NULL, NULL, &test_master, NULL); |
599 | GNUNET_CONFIGURATION_destroy (cfg); | ||
600 | } | 625 | } |
601 | 626 | ||
602 | 627 | ||
diff --git a/src/sensor/sensor.conf.in b/src/sensor/sensor.conf.in index f24503a0c..d85fab258 100644 --- a/src/sensor/sensor.conf.in +++ b/src/sensor/sensor.conf.in | |||
@@ -22,7 +22,7 @@ MODEL = gaussian | |||
22 | CONFIRMATION_COUNT = 3 | 22 | CONFIRMATION_COUNT = 3 |
23 | 23 | ||
24 | [sensor-model-gaussian] | 24 | [sensor-model-gaussian] |
25 | TRAINING_WINDOW = 1000 | 25 | TRAINING_WINDOW = 10 |
26 | CONFIDENCE_INTERVAL = 3 | 26 | CONFIDENCE_INTERVAL = 3 |
27 | 27 | ||
28 | [sensor-reporting] | 28 | [sensor-reporting] |