diff options
author | Christian Grothoff <christian@grothoff.org> | 2009-07-17 21:09:54 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2009-07-17 21:09:54 +0000 |
commit | a1f0c51bc626efeab9d842765fd1aede65035f93 (patch) | |
tree | 3cace958e8aa5cafd5774aa8671a1c27c3d441d4 /src/datastore/perf_plugin_datastore.c | |
parent | 4524a128f4f6e72a802dd7b1c4130d5c746467f2 (diff) | |
download | gnunet-a1f0c51bc626efeab9d842765fd1aede65035f93.tar.gz gnunet-a1f0c51bc626efeab9d842765fd1aede65035f93.zip |
implementing all-now iterator
Diffstat (limited to 'src/datastore/perf_plugin_datastore.c')
-rw-r--r-- | src/datastore/perf_plugin_datastore.c | 34 |
1 files changed, 21 insertions, 13 deletions
diff --git a/src/datastore/perf_plugin_datastore.c b/src/datastore/perf_plugin_datastore.c index fce5ef9ea..85659f06a 100644 --- a/src/datastore/perf_plugin_datastore.c +++ b/src/datastore/perf_plugin_datastore.c | |||
@@ -28,7 +28,7 @@ | |||
28 | #include "gnunet_protocols.h" | 28 | #include "gnunet_protocols.h" |
29 | #include "plugin_datastore.h" | 29 | #include "plugin_datastore.h" |
30 | 30 | ||
31 | #define VERBOSE GNUNET_YES | 31 | #define VERBOSE GNUNET_NO |
32 | 32 | ||
33 | /** | 33 | /** |
34 | * Target datastore size (in bytes). Realistic sizes are | 34 | * Target datastore size (in bytes). Realistic sizes are |
@@ -36,10 +36,9 @@ | |||
36 | * those take too long to run them in the usual "make check" | 36 | * those take too long to run them in the usual "make check" |
37 | * sequence. Hence the value used for shipping is tiny. | 37 | * sequence. Hence the value used for shipping is tiny. |
38 | */ | 38 | */ |
39 | #define MAX_SIZE 1024LL * 1024 | 39 | #define MAX_SIZE 1024LL * 1024 * 128 |
40 | /* * 128 */ | ||
41 | 40 | ||
42 | #define ITERATIONS 2 | 41 | #define ITERATIONS 10 |
43 | 42 | ||
44 | /** | 43 | /** |
45 | * Number of put operations equivalent to 1/10th of MAX_SIZE | 44 | * Number of put operations equivalent to 1/10th of MAX_SIZE |
@@ -76,6 +75,7 @@ struct CpsRunContext | |||
76 | struct GNUNET_DATASTORE_PluginFunctions * api; | 75 | struct GNUNET_DATASTORE_PluginFunctions * api; |
77 | const char *msg; | 76 | const char *msg; |
78 | enum RunPhase phase; | 77 | enum RunPhase phase; |
78 | unsigned int cnt; | ||
79 | }; | 79 | }; |
80 | 80 | ||
81 | 81 | ||
@@ -152,7 +152,8 @@ iterateDummy (void *cls, | |||
152 | crc->end = GNUNET_TIME_absolute_get(); | 152 | crc->end = GNUNET_TIME_absolute_get(); |
153 | printf (crc->msg, | 153 | printf (crc->msg, |
154 | crc->i, | 154 | crc->i, |
155 | (unsigned long long) (crc->end.value - crc->start.value)); | 155 | (unsigned long long) (crc->end.value - crc->start.value), |
156 | crc->cnt); | ||
156 | if (crc->phase != RP_AN_GET) | 157 | if (crc->phase != RP_AN_GET) |
157 | { | 158 | { |
158 | crc->phase++; | 159 | crc->phase++; |
@@ -171,7 +172,7 @@ iterateDummy (void *cls, | |||
171 | &test, crc); | 172 | &test, crc); |
172 | return GNUNET_OK; | 173 | return GNUNET_OK; |
173 | } | 174 | } |
174 | fprintf (stderr, "."); | 175 | crc->cnt++; |
175 | crc->api->next_request (next_cls, | 176 | crc->api->next_request (next_cls, |
176 | GNUNET_NO); | 177 | GNUNET_NO); |
177 | return GNUNET_OK; | 178 | return GNUNET_OK; |
@@ -238,8 +239,10 @@ test (void *cls, | |||
238 | for (j=0;j<PUT_10;j++) | 239 | for (j=0;j<PUT_10;j++) |
239 | putValue (crc->api, j, crc->i); | 240 | putValue (crc->api, j, crc->i); |
240 | crc->end = GNUNET_TIME_absolute_get (); | 241 | crc->end = GNUNET_TIME_absolute_get (); |
241 | printf ("%3u insertion took %20llums\n", crc->i, | 242 | printf ("%3u insertion took %20llums for %u\n", |
242 | (unsigned long long) (crc->end.value - crc->start.value)); | 243 | crc->i, |
244 | (unsigned long long) (crc->end.value - crc->start.value), | ||
245 | (unsigned int) PUT_10); | ||
243 | crc->i++; | 246 | crc->i++; |
244 | crc->phase = RP_LP_GET; | 247 | crc->phase = RP_LP_GET; |
245 | GNUNET_SCHEDULER_add_after (crc->sched, | 248 | GNUNET_SCHEDULER_add_after (crc->sched, |
@@ -249,36 +252,41 @@ test (void *cls, | |||
249 | &test, crc); | 252 | &test, crc); |
250 | break; | 253 | break; |
251 | case RP_LP_GET: | 254 | case RP_LP_GET: |
255 | crc->cnt = 0; | ||
252 | crc->start = GNUNET_TIME_absolute_get (); | 256 | crc->start = GNUNET_TIME_absolute_get (); |
253 | crc->msg = "%3u low priority iteration took %20llums\n"; | 257 | crc->msg = "%3u low priority iteration took %20llums for %u\n"; |
254 | crc->api->iter_low_priority (crc->api->cls, 0, | 258 | crc->api->iter_low_priority (crc->api->cls, 0, |
255 | &iterateDummy, | 259 | &iterateDummy, |
256 | crc); | 260 | crc); |
257 | break; | 261 | break; |
258 | case RP_AE_GET: | 262 | case RP_AE_GET: |
263 | crc->cnt = 0; | ||
259 | crc->start = GNUNET_TIME_absolute_get (); | 264 | crc->start = GNUNET_TIME_absolute_get (); |
260 | crc->msg = "%3u ascending expiration iteration took %20llums\n"; | 265 | crc->msg = "%3u ascending expiration iteration took %20llums for %u\n"; |
261 | crc->api->iter_ascending_expiration (crc->api->cls, 0, | 266 | crc->api->iter_ascending_expiration (crc->api->cls, 0, |
262 | &iterateDummy, | 267 | &iterateDummy, |
263 | crc); | 268 | crc); |
264 | break; | 269 | break; |
265 | case RP_ZA_GET: | 270 | case RP_ZA_GET: |
271 | crc->cnt = 0; | ||
266 | crc->start = GNUNET_TIME_absolute_get (); | 272 | crc->start = GNUNET_TIME_absolute_get (); |
267 | crc->msg = "%3u zero anonymity iteration took %20llums\n"; | 273 | crc->msg = "%3u zero anonymity iteration took %20llums for %u\n"; |
268 | crc->api->iter_zero_anonymity (crc->api->cls, 0, | 274 | crc->api->iter_zero_anonymity (crc->api->cls, 0, |
269 | &iterateDummy, | 275 | &iterateDummy, |
270 | crc); | 276 | crc); |
271 | break; | 277 | break; |
272 | case RP_MO_GET: | 278 | case RP_MO_GET: |
279 | crc->cnt = 0; | ||
273 | crc->start = GNUNET_TIME_absolute_get (); | 280 | crc->start = GNUNET_TIME_absolute_get (); |
274 | crc->msg = "%3u migration order iteration took %20llums\n"; | 281 | crc->msg = "%3u migration order iteration took %20llums for %u\n"; |
275 | crc->api->iter_migration_order (crc->api->cls, 0, | 282 | crc->api->iter_migration_order (crc->api->cls, 0, |
276 | &iterateDummy, | 283 | &iterateDummy, |
277 | crc); | 284 | crc); |
278 | break; | 285 | break; |
279 | case RP_AN_GET: | 286 | case RP_AN_GET: |
287 | crc->cnt = 0; | ||
280 | crc->start = GNUNET_TIME_absolute_get (); | 288 | crc->start = GNUNET_TIME_absolute_get (); |
281 | crc->msg = "%3u all now iteration took %20llums\n"; | 289 | crc->msg = "%3u all now iteration took %20llums for %u\n"; |
282 | crc->api->iter_all_now (crc->api->cls, 0, | 290 | crc->api->iter_all_now (crc->api->cls, 0, |
283 | &iterateDummy, | 291 | &iterateDummy, |
284 | crc); | 292 | crc); |