aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElias Summermatter <elias.summermatter@seccom.ch>2021-04-01 00:41:38 +0200
committerElias Summermatter <elias.summermatter@seccom.ch>2021-04-01 00:41:38 +0200
commit9f340d5cc0a4bde8443e154facdb2e4b4d553b9b (patch)
tree76dceabe7ded5978089dd00076ad5de528ea41bc
parent12bb6131739c483a8c633f137d4a8c51c441350f (diff)
downloadgnunet-9f340d5cc0a4bde8443e154facdb2e4b4d553b9b.tar.gz
gnunet-9f340d5cc0a4bde8443e154facdb2e4b4d553b9b.zip
Setu added some more perf messurement point for var message size
-rw-r--r--src/setu/gnunet-service-setu.c19
-rw-r--r--src/setu/perf_setu_api.c2
2 files changed, 19 insertions, 2 deletions
diff --git a/src/setu/gnunet-service-setu.c b/src/setu/gnunet-service-setu.c
index 9d555aee3..862b78aa9 100644
--- a/src/setu/gnunet-service-setu.c
+++ b/src/setu/gnunet-service-setu.c
@@ -1319,6 +1319,7 @@ send_ibf (struct Operation *op,
1319 buckets_in_message = MAX_BUCKETS_PER_MESSAGE; 1319 buckets_in_message = MAX_BUCKETS_PER_MESSAGE;
1320 1320
1321 perf_rtt.ibf.sent += 1; 1321 perf_rtt.ibf.sent += 1;
1322 perf_rtt.ibf.sent_var_bytes += ( buckets_in_message * IBF_BUCKET_SIZE );
1322 ev = GNUNET_MQ_msg_extra (msg, 1323 ev = GNUNET_MQ_msg_extra (msg,
1323 buckets_in_message * IBF_BUCKET_SIZE, 1324 buckets_in_message * IBF_BUCKET_SIZE,
1324 GNUNET_MESSAGE_TYPE_SETU_P2P_IBF); 1325 GNUNET_MESSAGE_TYPE_SETU_P2P_IBF);
@@ -1391,6 +1392,7 @@ send_full_element_iterator (void *cls,
1391 "Sending element %s\n", 1392 "Sending element %s\n",
1392 GNUNET_h2s (key)); 1393 GNUNET_h2s (key));
1393 perf_rtt.element_full.received += 1; 1394 perf_rtt.element_full.received += 1;
1395 perf_rtt.element_full.received_var_bytes += el->size;
1394 ev = GNUNET_MQ_msg_extra (emsg, 1396 ev = GNUNET_MQ_msg_extra (emsg,
1395 el->size, 1397 el->size,
1396 GNUNET_MESSAGE_TYPE_SETU_P2P_FULL_ELEMENT); 1398 GNUNET_MESSAGE_TYPE_SETU_P2P_FULL_ELEMENT);
@@ -1472,6 +1474,7 @@ handle_union_p2p_strata_estimator (void *cls,
1472 const struct StrataEstimatorMessage *msg) 1474 const struct StrataEstimatorMessage *msg)
1473{ 1475{
1474 perf_rtt.se.received += 1; 1476 perf_rtt.se.received += 1;
1477 perf_rtt.se.received_var_bytes += ntohs (msg->header.size) - sizeof(struct StrataEstimatorMessage);
1475 struct Operation *op = cls; 1478 struct Operation *op = cls;
1476 struct StrataEstimator *remote_se; 1479 struct StrataEstimator *remote_se;
1477 unsigned int diff; 1480 unsigned int diff;
@@ -1625,6 +1628,8 @@ send_offers_iterator (void *cls,
1625 return GNUNET_YES; 1628 return GNUNET_YES;
1626 1629
1627 perf_rtt.offer.sent += 1; 1630 perf_rtt.offer.sent += 1;
1631 perf_rtt.offer.sent_var_bytes += sizeof(struct GNUNET_HashCode);
1632
1628 ev = GNUNET_MQ_msg_header_extra (mh, 1633 ev = GNUNET_MQ_msg_header_extra (mh,
1629 sizeof(struct GNUNET_HashCode), 1634 sizeof(struct GNUNET_HashCode),
1630 GNUNET_MESSAGE_TYPE_SETU_P2P_OFFER); 1635 GNUNET_MESSAGE_TYPE_SETU_P2P_OFFER);
@@ -1805,6 +1810,7 @@ decode_and_send (struct Operation *op)
1805 struct InquiryMessage *msg; 1810 struct InquiryMessage *msg;
1806 1811
1807 perf_rtt.inquery.sent += 1; 1812 perf_rtt.inquery.sent += 1;
1813 perf_rtt.inquery.sent_var_bytes += sizeof(struct IBF_Key);
1808 /* It may be nice to merge multiple requests, but with CADET's corking it is not worth 1814 /* It may be nice to merge multiple requests, but with CADET's corking it is not worth
1809 * the effort additional complexity. */ 1815 * the effort additional complexity. */
1810 ev = GNUNET_MQ_msg_extra (msg, 1816 ev = GNUNET_MQ_msg_extra (msg,
@@ -1905,6 +1911,8 @@ handle_union_p2p_ibf (void *cls,
1905 unsigned int buckets_in_message; 1911 unsigned int buckets_in_message;
1906 1912
1907 perf_rtt.ibf.received += 1; 1913 perf_rtt.ibf.received += 1;
1914 perf_rtt.ibf.received_var_bytes += (ntohs (msg->header.size) - sizeof *msg);
1915
1908 buckets_in_message = (ntohs (msg->header.size) - sizeof *msg) 1916 buckets_in_message = (ntohs (msg->header.size) - sizeof *msg)
1909 / IBF_BUCKET_SIZE; 1917 / IBF_BUCKET_SIZE;
1910 if ((op->phase == PHASE_PASSIVE_DECODING) || 1918 if ((op->phase == PHASE_PASSIVE_DECODING) ||
@@ -2209,7 +2217,6 @@ handle_union_p2p_full_element (void *cls,
2209 struct KeyEntry *ke; 2217 struct KeyEntry *ke;
2210 uint16_t element_size; 2218 uint16_t element_size;
2211 2219
2212 perf_rtt.element_full.received += 1;
2213 2220
2214 2221
2215 if(PHASE_EXPECT_IBF == op->phase) { 2222 if(PHASE_EXPECT_IBF == op->phase) {
@@ -2234,6 +2241,10 @@ handle_union_p2p_full_element (void *cls,
2234 2241
2235 element_size = ntohs (emsg->header.size) 2242 element_size = ntohs (emsg->header.size)
2236 - sizeof(struct GNUNET_SETU_ElementMessage); 2243 - sizeof(struct GNUNET_SETU_ElementMessage);
2244
2245 perf_rtt.element_full.received += 1;
2246 perf_rtt.element_full.received_var_bytes += element_size;
2247
2237 ee = GNUNET_malloc (sizeof(struct ElementEntry) + element_size); 2248 ee = GNUNET_malloc (sizeof(struct ElementEntry) + element_size);
2238 GNUNET_memcpy (&ee[1], &emsg[1], element_size); 2249 GNUNET_memcpy (&ee[1], &emsg[1], element_size);
2239 ee->element.size = element_size; 2250 ee->element.size = element_size;
@@ -2346,6 +2357,7 @@ handle_union_p2p_inquiry (void *cls,
2346 unsigned int num_keys; 2357 unsigned int num_keys;
2347 2358
2348 perf_rtt.inquery.received += 1; 2359 perf_rtt.inquery.received += 1;
2360 perf_rtt.inquery.received_var_bytes += (ntohs (msg->header.size) - sizeof(struct InquiryMessage));
2349 2361
2350 LOG (GNUNET_ERROR_TYPE_DEBUG, 2362 LOG (GNUNET_ERROR_TYPE_DEBUG,
2351 "Received union inquiry\n"); 2363 "Received union inquiry\n");
@@ -2541,6 +2553,7 @@ handle_union_p2p_demand (void *cls,
2541 struct GNUNET_MQ_Envelope *ev; 2553 struct GNUNET_MQ_Envelope *ev;
2542 2554
2543 perf_rtt.demand.received += 1; 2555 perf_rtt.demand.received += 1;
2556 perf_rtt.demand.received_var_bytes += (ntohs (mh->size) - sizeof(struct GNUNET_MessageHeader));
2544 2557
2545 num_hashes = (ntohs (mh->size) - sizeof(struct GNUNET_MessageHeader)) 2558 num_hashes = (ntohs (mh->size) - sizeof(struct GNUNET_MessageHeader))
2546 / sizeof(struct GNUNET_HashCode); 2559 / sizeof(struct GNUNET_HashCode);
@@ -2642,6 +2655,7 @@ handle_union_p2p_offer (void *cls,
2642 unsigned int num_hashes; 2655 unsigned int num_hashes;
2643 2656
2644 perf_rtt.offer.received += 1; 2657 perf_rtt.offer.received += 1;
2658 perf_rtt.offer.received_var_bytes += (ntohs (mh->size) - sizeof(struct GNUNET_MessageHeader));
2645 2659
2646 num_hashes = (ntohs (mh->size) - sizeof(struct GNUNET_MessageHeader)) 2660 num_hashes = (ntohs (mh->size) - sizeof(struct GNUNET_MessageHeader))
2647 / sizeof(struct GNUNET_HashCode); 2661 / sizeof(struct GNUNET_HashCode);
@@ -2680,6 +2694,7 @@ handle_union_p2p_offer (void *cls,
2680 op, GNUNET_h2s (hash)); 2694 op, GNUNET_h2s (hash));
2681 2695
2682 perf_rtt.demand.sent += 1; 2696 perf_rtt.demand.sent += 1;
2697 perf_rtt.demand.sent_var_bytes += sizeof(struct GNUNET_HashCode);
2683 ev = GNUNET_MQ_msg_header_extra (demands, 2698 ev = GNUNET_MQ_msg_header_extra (demands,
2684 sizeof(struct GNUNET_HashCode), 2699 sizeof(struct GNUNET_HashCode),
2685 GNUNET_MESSAGE_TYPE_SETU_P2P_DEMAND); 2700 GNUNET_MESSAGE_TYPE_SETU_P2P_DEMAND);
@@ -3735,6 +3750,8 @@ handle_client_accept (void *cls,
3735 len = strata_estimator_write (se, 3750 len = strata_estimator_write (se,
3736 buf); 3751 buf);
3737 perf_rtt.se.sent += 1; 3752 perf_rtt.se.sent += 1;
3753 perf_rtt.se.sent_var_bytes += len;
3754
3738 if (len < se->strata_count * IBF_BUCKET_SIZE * se->ibf_size) 3755 if (len < se->strata_count * IBF_BUCKET_SIZE * se->ibf_size)
3739 type = GNUNET_MESSAGE_TYPE_SETU_P2P_SEC; 3756 type = GNUNET_MESSAGE_TYPE_SETU_P2P_SEC;
3740 else 3757 else
diff --git a/src/setu/perf_setu_api.c b/src/setu/perf_setu_api.c
index 60a5e5e85..3b82e8af9 100644
--- a/src/setu/perf_setu_api.c
+++ b/src/setu/perf_setu_api.c
@@ -395,7 +395,7 @@ run (void *cls,
395 "Running real set-reconciliation\n"); 395 "Running real set-reconciliation\n");
396 //init_set1 (); 396 //init_set1 ();
397 // limit ~23800 element total 397 // limit ~23800 element total
398 initRandomSets(99,100,100,64); 398 initRandomSets(50,100,100,128);
399} 399}
400 400
401static void execute_perf() 401static void execute_perf()