aboutsummaryrefslogtreecommitdiff
path: root/src/testbed/testbed_api_operations.c
diff options
context:
space:
mode:
authorSree Harsha Totakura <totakura@in.tum.de>2013-11-18 10:24:38 +0000
committerSree Harsha Totakura <totakura@in.tum.de>2013-11-18 10:24:38 +0000
commitd2a1cac67958ef35af711fce48a90674c148b6b9 (patch)
tree1a58507a95585279ba86c4e3f28f5a983870b9a9 /src/testbed/testbed_api_operations.c
parentb205514cf813d9024ff2080f6b531831a0154f41 (diff)
downloadgnunet-d2a1cac67958ef35af711fce48a90674c148b6b9.tar.gz
gnunet-d2a1cac67958ef35af711fce48a90674c148b6b9.zip
fix #2944: modify the adaptive parallelisation algorithm
Diffstat (limited to 'src/testbed/testbed_api_operations.c')
-rw-r--r--src/testbed/testbed_api_operations.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/testbed/testbed_api_operations.c b/src/testbed/testbed_api_operations.c
index e3e9bb83d..ce2ef5715 100644
--- a/src/testbed/testbed_api_operations.c
+++ b/src/testbed/testbed_api_operations.c
@@ -881,6 +881,16 @@ adapt_parallelism (struct OperationQueue *queue)
881 adaptive_queue_set_max_active (queue, queue->max_active); /* no change */ 881 adaptive_queue_set_max_active (queue, queue->max_active); /* no change */
882 return; 882 return;
883 } 883 }
884 if (1 == sd)
885 adaptive_queue_set_max_active (queue, queue->max_active - 1);
886 if (2 <= sd)
887 adaptive_queue_set_max_active (queue, queue->max_active / 2);
888 if (-1 == sd)
889 adaptive_queue_set_max_active (queue, queue->max_active + 1);
890 if (sd <= -2)
891 adaptive_queue_set_max_active (queue, queue->max_active * 2);
892
893#if 0 /* old algorithm */
884 if (sd < 0) 894 if (sd < 0)
885 sd = 0; 895 sd = 0;
886 GNUNET_assert (0 <= sd); 896 GNUNET_assert (0 <= sd);
@@ -906,6 +916,7 @@ adapt_parallelism (struct OperationQueue *queue)
906 return; 916 return;
907 } 917 }
908 adaptive_queue_set_max_active (queue, queue->max_active / 2); 918 adaptive_queue_set_max_active (queue, queue->max_active / 2);
919#endif
909} 920}
910 921
911 922