You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by al...@apache.org on 2021/11/24 17:35:59 UTC

[kudu] branch master updated: [benchmarks] add MetaCacheLookupStressTest scenarios

This is an automated email from the ASF dual-hosted git repository.

alexey pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git


The following commit(s) were added to refs/heads/master by this push:
     new e266f71  [benchmarks] add MetaCacheLookupStressTest scenarios
e266f71 is described below

commit e266f7139983fd8316ec97f046db6125124c77de
Author: Alexey Serbin <al...@apache.org>
AuthorDate: Tue Nov 23 19:29:05 2021 -0800

    [benchmarks] add MetaCacheLookupStressTest scenarios
    
    Added a couple of new benchmarks for the recently introduced scenarios
    from the client-stress-test:
    
      * MetaCacheLookupStressTest.Perf
      * MetaCacheLookupStressTest.PerfSynthetic
    
    Change-Id: I7347e9280054b77245dbfe240ab66e49ae4a6b90
    Reviewed-on: http://gerrit.cloudera.org:8080/18052
    Tested-by: Alexey Serbin <as...@cloudera.com>
    Reviewed-by: Attila Bukor <ab...@apache.org>
---
 src/kudu/scripts/benchmarks.sh | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/src/kudu/scripts/benchmarks.sh b/src/kudu/scripts/benchmarks.sh
index 74d0a49..94e531f 100755
--- a/src/kudu/scripts/benchmarks.sh
+++ b/src/kudu/scripts/benchmarks.sh
@@ -73,6 +73,9 @@ GET_TABLE_LOCATIONS_DIRECT_CALL=GetTableLocationsTestDirectCall
 
 SAME_TABLET_CONCURRENT_WRITES=SameTabletConcurrentWrites
 
+CLIENT_METACACHE_PERF=ClientMetacachePerf
+CLIENT_METACACHE_PERF_SYNTHETIC=ClientMetacachePerfSynthetic
+
 LOG_DIR_NAME=build/latest/bench-logs
 OUT_DIR_NAME=build/latest/bench-out
 HTML_FILE="benchmarks.html"
@@ -411,6 +414,20 @@ run_benchmarks() {
       --num_inserter_threads=16 \
       &> $LOGDIR/${SAME_TABLET_CONCURRENT_WRITES}$i.log
   done
+
+  # Run MetaCacheLookupStressTest.Perf scenario.
+  for i in $(seq 1 $NUM_SAMPLES) ; do
+    $PERF_STAT ./build/latest/bin/client-stress-test \
+      --gtest_filter='MetaCacheLookupStressTest.Perf' \
+      &> $LOGDIR/${CLIENT_METACACHE_PERF}$i.log
+  done
+
+  # Run MetaCacheLookupStressTest.PerfSynthetic scenario.
+  for i in $(seq 1 $NUM_SAMPLES) ; do
+    $PERF_STAT ./build/latest/bin/client-stress-test \
+      --gtest_filter='MetaCacheLookupStressTest.PerfSynthetic' \
+      &> $LOGDIR/${CLIENT_METACACHE_PERF_SYNTHETIC}$i.log
+  done
 }
 
 parse_and_record_perf_stats() {
@@ -685,6 +702,24 @@ parse_and_record_all_results() {
     record_result $BUILD_IDENTIFIER ${id}_overflows $i $overflows
   done
 
+  for i in $(seq 1 $NUM_SAMPLES); do
+    local id=$CLIENT_METACACHE_PERF
+    local log=$LOGDIR/${id}${i}.log
+    parse_and_record_perf_stats $BUILD_IDENTIFIER $id $i $log
+
+    local time_per_row=$(grep -o 'Time per row: .* ms' $log | awk '{print $4}')
+    record_result $BUILD_IDENTIFIER ${id}_time_per_row $i $time_per_row
+  done
+
+  for i in $(seq 1 $NUM_SAMPLES); do
+    local id=$CLIENT_METACACHE_PERF_SYNTHETIC
+    local log=$LOGDIR/${id}${i}.log
+    parse_and_record_perf_stats $BUILD_IDENTIFIER $id $i $log
+
+    local time_per_row=$(grep -o 'Time per row: .* ms' $log | awk '{print $4}')
+    record_result $BUILD_IDENTIFIER ${id}_time_per_row $i $time_per_row
+  done
+
   popd
   popd
   popd
@@ -801,6 +836,9 @@ load_stats_and_generate_plots() {
   load_and_generate_plot "${SAME_TABLET_CONCURRENT_WRITES}_req_rate" same-tablet-concurrent-writes-rate "RPC rate (req/sec)"
   load_and_generate_plot "${SAME_TABLET_CONCURRENT_WRITES}_overflows" same-tablet-concurrent-writes-overflows "RPC queue overflows (total count)"
 
+  load_and_generate_plot "${CLIENT_METACACHE_PERF}_time_per_row" client-metacache-lookup-perf "per-row apply time (sec)"
+  load_and_generate_plot "${CLIENT_METACACHE_PERF_SYNTHETIC}_time_per_row" client-metacache-lookup-perf-synthetic "per-row lookup time (sec)"
+
   # Generate all the pngs for all the mt-tablet tests
   for i in $(seq 0 $NUM_MT_TABLET_TESTS); do
     cat $LOGDIR/${MT_TABLET_TEST}.log | ./graph-metrics.py MultiThreadedTabletTest/$i > $OUTDIR/test$i.tsv