From 1dc368c195168851deb366529373732406e2fd48 Mon Sep 17 00:00:00 2001 From: ruokun-niu Date: Mon, 28 Oct 2024 11:47:02 -0700 Subject: [PATCH 1/3] enabled lto in drasi-core --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 8fac28b..4495d61 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,4 +19,4 @@ version = "0.2.0" [profile.release] codegen-units = 1 -lto = "thin" +lto = true From 34ddf94d214bd5fbb8663eb35816dbd4a31eda5f Mon Sep 17 00:00:00 2001 From: ruokun-niu Date: Mon, 28 Oct 2024 12:33:33 -0700 Subject: [PATCH 2/3] updated perf test shell script to use release profile --- query-perf/run_perf_tests | 15 --------------- query-perf/run_perf_tests.sh | 24 ++++++++++++++++++++++++ 2 files changed, 24 insertions(+), 15 deletions(-) delete mode 100755 query-perf/run_perf_tests create mode 100755 query-perf/run_perf_tests.sh diff --git a/query-perf/run_perf_tests b/query-perf/run_perf_tests deleted file mode 100755 index 0ca4d9b..0000000 --- a/query-perf/run_perf_tests +++ /dev/null @@ -1,15 +0,0 @@ -cargo run -- -s single_node_property_projection -e memory -r memory -cargo run -- -s single_node_property_projection -e rocksdb -r rocksdb -cargo run -- -s single_node_property_projection -e redis -r redis - -cargo run -- -s single_node_calculation_projection -e memory -r memory -cargo run -- -s single_node_calculation_projection -e rocksdb -r rocksdb -cargo run -- -s single_node_calculation_projection -e redis -r redis - -cargo run -- -s single_path_averaging_projection -e memory -r memory -cargo run -- -s single_path_averaging_projection -e rocksdb -r rocksdb -cargo run -- -s single_path_averaging_projection -e redis -r redis - -cargo run -- -s single_path_no_change_averaging_projection -e memory -r memory -cargo run -- -s single_path_no_change_averaging_projection -e rocksdb -r rocksdb -cargo run -- -s single_path_no_change_averaging_projection -e redis -r redis \ No newline at end of file diff --git a/query-perf/run_perf_tests.sh b/query-perf/run_perf_tests.sh new file mode 100755 index 0000000..c154f39 --- /dev/null +++ b/query-perf/run_perf_tests.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +# Define the output file +output_file="all_output_lto.txt" + +# Clear the output file if it already exists +> "$output_file" + +# Run each command and append its output to the output file +cargo run --release -- -s single_node_property_projection -e memory -r memory --seed 12345 >> "$output_file" +cargo run --release -- -s single_node_property_projection -e rocksdb -r rocksdb --seed 12345 >> "$output_file" +cargo run --release -- -s single_node_property_projection -e redis -r redis --seed 12345 >> "$output_file" + +cargo run --release -- -s single_node_calculation_projection -e memory -r memory --seed 12345 >> "$output_file" +cargo run --release -- -s single_node_calculation_projection -e rocksdb -r rocksdb --seed 12345 >> "$output_file" +cargo run --release -- -s single_node_calculation_projection -e redis -r redis --seed 12345 >> "$output_file" + +cargo run --release -- -s single_path_averaging_projection -e memory -r memory --seed 12345 >> "$output_file" +cargo run --release -- -s single_path_averaging_projection -e rocksdb -r rocksdb --seed 12345 >> "$output_file" +cargo run --release -- -s single_path_averaging_projection -e redis -r redis --seed 12345 >> "$output_file" + +cargo run --release -- -s single_path_no_change_averaging_projection -e memory -r memory --seed 12345 >> "$output_file" +cargo run --release -- -s single_path_no_change_averaging_projection -e rocksdb -r rocksdb --seed 12345 >> "$output_file" +cargo run --release -- -s single_path_no_change_averaging_projection -e redis -r redis --seed 12345 >> "$output_file" From d2dbaff6c825b7b17ad7957dd7496448aac03b30 Mon Sep 17 00:00:00 2001 From: ruokun-niu Date: Mon, 28 Oct 2024 12:34:28 -0700 Subject: [PATCH 3/3] perf readme --- query-perf/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/query-perf/README.md b/query-perf/README.md index 6c196bc..472b056 100644 --- a/query-perf/README.md +++ b/query-perf/README.md @@ -6,10 +6,10 @@ This allows us to establish a baseline understanding of raw component performanc The tool is structured around the concept of a Performance Test Scenario, which represents the combination of a specific Continuous Query against a data model. The same Performance Test Scenario with the same expected outcomes can then be run against different component configurations simply by specifying the desired component configuration using command line parameters. # Execution -You can run the The Component Performance Test Tool from a compiled binary: +You can run the The Component Performance Test Tool using a shell script: ``` -./query-perf +./run_perf_tests.sh ``` ... or using the Cargo tool from the project directory: