diff options
Diffstat (limited to 'src/rps/gnunet-service-rps.c')
-rw-r--r-- | src/rps/gnunet-service-rps.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/rps/gnunet-service-rps.c b/src/rps/gnunet-service-rps.c index da0661b2d..71a3d55bb 100644 --- a/src/rps/gnunet-service-rps.c +++ b/src/rps/gnunet-service-rps.c | |||
@@ -750,17 +750,20 @@ est_request_rate() | |||
750 | (req_counter - 1) * sizeof (struct GNUNET_TIME_Relative)); | 750 | (req_counter - 1) * sizeof (struct GNUNET_TIME_Relative)); |
751 | 751 | ||
752 | /* Add current delta to beginning */ | 752 | /* Add current delta to beginning */ |
753 | request_deltas[0] = GNUNET_TIME_absolute_get_difference (last_request, | 753 | request_deltas[0] = |
754 | GNUNET_TIME_absolute_get ()); | 754 | GNUNET_TIME_absolute_get_difference (last_request, |
755 | GNUNET_TIME_absolute_get ()); | ||
755 | request_rate = T_relative_avg (request_deltas, req_counter); | 756 | request_rate = T_relative_avg (request_deltas, req_counter); |
756 | 757 | ||
757 | /* Compute the duration a round will maximally take */ | 758 | /* Compute the duration a round will maximally take */ |
758 | max_round_duration = GNUNET_TIME_relative_add (round_interval, | 759 | max_round_duration = |
759 | GNUNET_TIME_relative_divide (round_interval, 2)); | 760 | GNUNET_TIME_relative_add (round_interval, |
761 | GNUNET_TIME_relative_divide (round_interval, 2)); | ||
760 | 762 | ||
761 | /* Set the estimated size the sampler has to have to | 763 | /* Set the estimated size the sampler has to have to |
762 | * satisfy the current client request rate */ | 764 | * satisfy the current client request rate */ |
763 | sampler_size_client_need = max_round_duration.rel_value_us / request_rate.rel_value_us; | 765 | sampler_size_client_need = |
766 | max_round_duration.rel_value_us / request_rate.rel_value_us; | ||
764 | 767 | ||
765 | /* Resize the sampler */ | 768 | /* Resize the sampler */ |
766 | resize_wrapper (); | 769 | resize_wrapper (); |
@@ -780,7 +783,8 @@ est_request_rate() | |||
780 | * accordingly. | 783 | * accordingly. |
781 | */ | 784 | */ |
782 | void | 785 | void |
783 | nse_callback (void *cls, struct GNUNET_TIME_Absolute timestamp, double logestimate, double std_dev) | 786 | nse_callback (void *cls, struct GNUNET_TIME_Absolute timestamp, |
787 | double logestimate, double std_dev) | ||
784 | { | 788 | { |
785 | double estimate; | 789 | double estimate; |
786 | //double scale; // TODO this might go gloabal/config | 790 | //double scale; // TODO this might go gloabal/config |
@@ -791,7 +795,7 @@ nse_callback (void *cls, struct GNUNET_TIME_Absolute timestamp, double logestima | |||
791 | //scale = .01; | 795 | //scale = .01; |
792 | estimate = GNUNET_NSE_log_estimate_to_n (logestimate); | 796 | estimate = GNUNET_NSE_log_estimate_to_n (logestimate); |
793 | // GNUNET_NSE_log_estimate_to_n (logestimate); | 797 | // GNUNET_NSE_log_estimate_to_n (logestimate); |
794 | estimate = pow (estimate, 1./3); | 798 | estimate = pow (estimate, 1.0 / 3); |
795 | // TODO add if std_dev is a number | 799 | // TODO add if std_dev is a number |
796 | // estimate += (std_dev * scale); | 800 | // estimate += (std_dev * scale); |
797 | if ( 0 < estimate ) { | 801 | if ( 0 < estimate ) { |