[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [gnunet] branch master updated (857f3bc73 -> a5c75acc9)
From: |
gnunet |
Subject: |
[GNUnet-SVN] [gnunet] branch master updated (857f3bc73 -> a5c75acc9) |
Date: |
Tue, 10 Jul 2018 12:38:59 +0200 |
This is an automated email from the git hooks/post-receive script.
julius-buenger pushed a change to branch master
in repository gnunet.
from 857f3bc73 fix rps profiler: keep track about scheduled tasks properly
new d1c8a1e76 rps profiler: add option for duration of profiling
new a5c75acc9 fix rps profiler: mark statistics get done in right place
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
src/rps/gnunet-rps-profiler.c | 53 ++++++++++++++++++++++++++++++++++---------
1 file changed, 42 insertions(+), 11 deletions(-)
diff --git a/src/rps/gnunet-rps-profiler.c b/src/rps/gnunet-rps-profiler.c
index 9ad6d3c3b..4ebd745e8 100644
--- a/src/rps/gnunet-rps-profiler.c
+++ b/src/rps/gnunet-rps-profiler.c
@@ -49,7 +49,11 @@ static unsigned bits_needed;
/**
* How long do we run the test?
*/
-//#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 30)
+static struct GNUNET_TIME_Relative duration;
+
+/**
+ * When do we do a hard shutdown?
+ */
static struct GNUNET_TIME_Relative timeout;
@@ -995,7 +999,7 @@ shutdown_op (void *cls)
/**
- * Task run on timeout to collect statistics and potentially shut down.
+ * Task run after #duration to collect statistics and potentially shut down.
*/
static void
post_test_op (void *cls)
@@ -1314,7 +1318,8 @@ default_reply_handle (void *cls,
if (0 == evaluate () && HAVE_QUICK_QUIT == cur_test_run.have_quick_quit)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Test succeeded before timeout\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Test succeeded before end of duration\n");
GNUNET_assert (NULL != post_test_task);
GNUNET_SCHEDULER_cancel (post_test_task);
post_test_task = GNUNET_SCHEDULER_add_now (&post_test_op, NULL);
@@ -2367,6 +2372,8 @@ post_test_shutdown_ready_cb (void *cls,
{
struct STATcls *stat_cls = (struct STATcls *) cls;
struct RPSPeer *rps_peer = stat_cls->rps_peer;
+
+ rps_peer->h_stat_get[stat_cls->stat_type] = NULL;
if (GNUNET_OK == success)
{
/* set flag that we we got the value */
@@ -2423,7 +2430,6 @@ stat_iterator (void *cls,
//stat_type_2_str (stat_cls->stat_type),
name,
value);
- rps_peer->h_stat_get[stat_str_2_type (name)] = NULL;
to_file (rps_peer->file_name_stats,
"%s: %" PRIu64 "\n",
name,
@@ -2629,11 +2635,9 @@ test_run (void *cls,
if (NULL != churn_task)
GNUNET_SCHEDULER_cancel (churn_task);
- post_test_task = GNUNET_SCHEDULER_add_delayed (timeout, &post_test_op, NULL);
- timeout = GNUNET_TIME_relative_multiply (timeout, 1.2 + (0.01 * num_peers));
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "timeout for hard shutdown is %lu\n",
timeout.rel_value_us/1000000);
+ post_test_task = GNUNET_SCHEDULER_add_delayed (duration, &post_test_op,
NULL);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "timeout for shutdown is %lu\n",
timeout.rel_value_us/1000000);
shutdown_task = GNUNET_SCHEDULER_add_delayed (timeout, &shutdown_op, NULL);
-
}
@@ -2669,7 +2673,7 @@ run (void *cls,
if (0 == cur_test_run.num_requests) cur_test_run.num_requests = 5;
//cur_test_run.have_churn = HAVE_CHURN;
cur_test_run.have_churn = HAVE_NO_CHURN;
- cur_test_run.have_quick_quit = HAVE_NO_QUICK_QUIT;
+ cur_test_run.have_quick_quit = HAVE_QUICK_QUIT;
cur_test_run.have_collect_statistics = COLLECT_STATISTICS;
cur_test_run.stat_collect_flags = BIT(STAT_TYPE_ROUNDS) |
BIT(STAT_TYPE_BLOCKS) |
@@ -2692,9 +2696,30 @@ run (void *cls,
/* 'Clean' directory */
(void) GNUNET_DISK_directory_remove ("/tmp/rps/");
GNUNET_DISK_directory_create ("/tmp/rps/");
- if (0 == timeout.rel_value_us)
+ if (0 == duration.rel_value_us)
+ {
+ if (0 == timeout.rel_value_us)
+ {
+ duration = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 90);
+ timeout = GNUNET_TIME_relative_multiply (duration,
+ 1.2 + (0.01 * num_peers));
+ }
+ else
+ {
+ duration = GNUNET_TIME_relative_multiply (timeout, 0.75 );
+ }
+ }
+ else
{
- timeout = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 90);
+ if (0 == timeout.rel_value_us)
+ {
+ timeout = GNUNET_TIME_relative_multiply (duration,
+ 1.2 + (0.01 * num_peers));
+ }
+ else
+ {
+ GNUNET_assert (duration.rel_value_us <= timeout.rel_value_us);
+ }
}
/* Compute number of bits for representing largest peer id */
@@ -2745,6 +2770,12 @@ main (int argc, char *argv[])
gettext_noop ("number of peers to start"),
&num_peers),
+ GNUNET_GETOPT_option_relative_time ('d',
+ "duration",
+ "DURATION",
+ gettext_noop ("duration of the
profiling"),
+ &duration),
+
GNUNET_GETOPT_option_relative_time ('t',
"timeout",
"TIMEOUT",
--
To stop receiving notification emails like this one, please contact
address@hidden
- [GNUnet-SVN] [gnunet] branch master updated (857f3bc73 -> a5c75acc9),
gnunet <=