[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r32310 - in gnunet/src/ats: . experiments
From: |
gnunet |
Subject: |
[GNUnet-SVN] r32310 - in gnunet/src/ats: . experiments |
Date: |
Tue, 11 Feb 2014 17:32:12 +0100 |
Author: wachs
Date: 2014-02-11 17:32:11 +0100 (Tue, 11 Feb 2014)
New Revision: 32310
Modified:
gnunet/src/ats/experiments/set_preference.exp
gnunet/src/ats/gnunet-ats-solver-eval.c
gnunet/src/ats/gnunet-ats-solver-eval.h
Log:
basic logging
Modified: gnunet/src/ats/experiments/set_preference.exp
===================================================================
--- gnunet/src/ats/experiments/set_preference.exp 2014-02-11 14:07:59 UTC
(rev 32309)
+++ gnunet/src/ats/experiments/set_preference.exp 2014-02-11 16:32:11 UTC
(rev 32310)
@@ -37,7 +37,7 @@
[episode-1]
# Set delay
-duration = 5 s
+duration = 1 s
op-0-operation = start_set_preference
op-0-address-id = 0
Modified: gnunet/src/ats/gnunet-ats-solver-eval.c
===================================================================
--- gnunet/src/ats/gnunet-ats-solver-eval.c 2014-02-11 14:07:59 UTC (rev
32309)
+++ gnunet/src/ats/gnunet-ats-solver-eval.c 2014-02-11 16:32:11 UTC (rev
32310)
@@ -60,6 +60,11 @@
*/
static int opt_verbose;
+/**
+ * cmd option -p: print logs
+ */
+static int opt_print;
+
static int res;
static void
@@ -133,14 +138,28 @@
* Logging
*/
+void
+GNUNET_ATS_solver_logging_now (struct LoggingHandle *l)
+{
+ struct LoggingTimeStep *lts;
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Logging\n");
+
+ lts = GNUNET_new (struct LoggingTimeStep);
+ lts->timestamp = GNUNET_TIME_absolute_get();
+
+ /* Store logging data here */
+
+ GNUNET_CONTAINER_DLL_insert_tail(l->head, l->tail, lts);
+
+}
+
static void
logging_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct LoggingHandle *l = cls;
-
l->logging_task = GNUNET_SCHEDULER_NO_TASK;
- GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Logging\n");
+ GNUNET_ATS_solver_logging_now (l);
l->logging_task = GNUNET_SCHEDULER_add_delayed (l->log_freq, &logging_task,
l);
@@ -164,12 +183,6 @@
}
void
-GNUNET_ATS_solver_logging_now (struct LoggingHandle *l)
-{
- GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Logging\n");
-}
-
-void
GNUNET_ATS_solver_logging_stop (struct LoggingHandle *l)
{
if (GNUNET_SCHEDULER_NO_TASK != l->logging_task)
@@ -183,15 +196,32 @@
void
GNUNET_ATS_solver_logging_eval (struct LoggingHandle *l)
{
+ struct LoggingTimeStep *lts;
+ for (lts = l->head; NULL != lts; lts = lts->next)
+ {
+ fprintf (stderr, "Log %llu: \n", (long long unsigned int)
lts->timestamp.abs_value_us);
+ }
}
void
GNUNET_ATS_solver_logging_free (struct LoggingHandle *l)
{
+ struct LoggingTimeStep *cur;
+ struct LoggingTimeStep *next;
+
if (GNUNET_SCHEDULER_NO_TASK != l->logging_task)
GNUNET_SCHEDULER_cancel (l->logging_task);
l->logging_task = GNUNET_SCHEDULER_NO_TASK;
+
+ next = l->head;
+ while (NULL != (cur = next))
+ {
+ next = cur->next;
+ GNUNET_CONTAINER_DLL_remove (l->head, l->tail, cur);
+ GNUNET_free (cur);
+ }
+
GNUNET_free (l);
}
@@ -1717,7 +1747,6 @@
"Deleting address for unknown peer %u\n", op->peer_id);
return;
}
- GNUNET_CONTAINER_DLL_remove (p->addr_head, p->addr_tail, a);
GNUNET_CONTAINER_multipeermap_remove (sh->addresses, &p->peer_id, ctx.res);
@@ -2472,6 +2501,9 @@
e = NULL;
}
+ if (opt_print)
+ GNUNET_ATS_solver_logging_eval (l);
+
if (NULL != l)
{
GNUNET_ATS_solver_logging_free (l);
@@ -2492,7 +2524,6 @@
}
GNUNET_free (cur);
}
-
if (NULL != sh)
{
GNUNET_ATS_solvers_solver_stop (sh);
@@ -2500,7 +2531,6 @@
}
/* Shutdown */
end_now();
-
}
static void
@@ -2512,19 +2542,6 @@
else
GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Experiment failed \n");
-
- /*
- evaluate (duration);
- if (opt_log)
- GNUNET_ATS_TEST_logging_write_to_file(l, opt_exp_file, opt_plot);
-
- if (NULL != l)
- {
- GNUNET_ATS_TEST_logging_stop (l);
- GNUNET_ATS_TEST_logging_clean_up (l);
- l = NULL;
- }
- */
GNUNET_SCHEDULER_add_now (&done, NULL);
}
@@ -2654,6 +2671,9 @@
{ 'e', "experiment", NULL,
gettext_noop ("experiment to use"),
1, &GNUNET_GETOPT_set_one, &opt_verbose},
+ { 'p', "print", NULL,
+ gettext_noop ("print logging"),
+ 0, &GNUNET_GETOPT_set_one, &opt_print},
GNUNET_GETOPT_OPTION_END
};
Modified: gnunet/src/ats/gnunet-ats-solver-eval.h
===================================================================
--- gnunet/src/ats/gnunet-ats-solver-eval.h 2014-02-11 14:07:59 UTC (rev
32309)
+++ gnunet/src/ats/gnunet-ats-solver-eval.h 2014-02-11 16:32:11 UTC (rev
32310)
@@ -83,6 +83,15 @@
};
+struct LoggingTimeStep
+{
+ struct LoggingTimeStep *prev;
+ struct LoggingTimeStep *next;
+
+ struct GNUNET_TIME_Absolute timestamp;
+};
+
+
struct TestPeer
{
struct TestPeer *prev;
@@ -157,6 +166,10 @@
{
GNUNET_SCHEDULER_TaskIdentifier logging_task;
struct GNUNET_TIME_Relative log_freq;
+
+ struct LoggingTimeStep *head;
+
+ struct LoggingTimeStep *tail;
};
struct Experiment
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r32310 - in gnunet/src/ats: . experiments,
gnunet <=