Skip to content

Commit fd40fb1

Browse files
Merge pull request #765 from ClickHouse/gizmosql-debugging
Gizmosql benchmark fixed to correctly clear cache in between queries and updated with results from a true benchmark run.
2 parents 4484d3e + 32a8aef commit fd40fb1

File tree

3 files changed

+58
-55
lines changed

3 files changed

+58
-55
lines changed

gizmosql/benchmark.sh

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
#!/bin/bash
22

3+
# needed by DuckDB
4+
export HOME=/home/ubuntu
5+
36
# Install requirements
4-
sudo apt-get update -y
5-
sudo apt install openjdk-17-jre-headless unzip netcat-openbsd -y
7+
apt-get update -y
8+
apt install openjdk-17-jre-headless unzip netcat-openbsd -y
69

710
# Detect architecture (maps x86_64->amd64, aarch64->arm64)
811
ARCH=$(uname -m)
@@ -15,13 +18,13 @@ fi
1518
# Server setup Install
1619
curl -L -o gizmosql.zip "https://github.com/gizmodata/gizmosql/releases/latest/download/gizmosql_cli_linux_${ARCH}.zip"
1720
unzip gizmosql.zip
18-
sudo mv gizmosql_server gizmosql_client /usr/local/bin/
21+
mv gizmosql_server gizmosql_client /usr/local/bin/
1922

2023
# Install Java and the GizmoSQLLine CLI client
2124
pushd /tmp
2225
curl -L -o gizmosqlline https://github.com/gizmodata/gizmosqlline/releases/latest/download/gizmosqlline
2326
chmod +x gizmosqlline
24-
sudo mv gizmosqlline /usr/local/bin/
27+
mv gizmosqlline /usr/local/bin/
2528
popd
2629

2730
# Source our env vars and utility functions for starting/stopping gizmosql server
@@ -50,7 +53,7 @@ time gizmosqlline \
5053
stop_gizmosql
5154

5255
# Run the queries
53-
script --quiet --command="./run.sh" log.txt
56+
./run.sh 2>&1 | tee log.txt
5457

5558
# Remove carriage returns from the log
5659
sed -i 's/\r$//' log.txt

gizmosql/results/c6a.4xlarge.json

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,57 @@
11
{
22
"system": "GizmoSQL",
3-
"date": "2026-01-24",
3+
"date": "2026-01-28",
44
"machine": "c6a.4xlarge",
55
"cluster_size": 1,
66
"proprietary": "no",
77
"hardware": "cpu",
88
"tuned": "no",
99
"tags": ["C++","column-oriented"],
10-
"load_time": 131.966,
11-
"data_size": 26924298240,
10+
"load_time": 142.531,
11+
"data_size": 26960736256,
1212
"result": [
13-
[0.053, 0.008, 0.007],
14-
[0.129, 0.012, 0.01],
15-
[0.175, 0.029, 0.027],
16-
[0.321, 0.039, 0.039],
17-
[0.363, 0.261, 0.26],
18-
[0.838, 0.423, 0.416],
19-
[0.096, 0.015, 0.014],
20-
[0.091, 0.016, 0.015],
21-
[0.529, 0.358, 0.361],
22-
[0.679, 0.521, 0.524],
23-
[0.299, 0.14, 0.137],
24-
[0.295, 0.147, 0.144],
25-
[0.554, 0.404, 0.403],
26-
[0.915, 0.696, 0.702],
27-
[0.62, 0.43, 0.426],
28-
[0.451, 0.324, 0.33],
29-
[1.023, 0.832, 0.84],
30-
[0.783, 0.562, 0.576],
31-
[1.993, 1.517, 1.539],
32-
[0.074, 0.014, 0.012],
33-
[17.562, 0.483, 0.479],
34-
[0.953, 0.493, 0.482],
35-
[11.484, 0.531, 0.541],
36-
[0.54, 0.125, 0.117],
37-
[0.108, 0.04, 0.041],
38-
[0.227, 0.149, 0.149],
39-
[0.112, 0.037, 0.036],
40-
[0.862, 0.374, 0.375],
41-
[12.601, 7.034, 7.025],
42-
[0.14, 0.053, 0.046],
43-
[0.629, 0.345, 0.346],
44-
[2.031, 0.424, 0.43],
45-
[2.052, 1.713, 1.772],
46-
[2.309, 1.704, 1.716],
47-
[2.438, 1.841, 1.816],
48-
[0.526, 0.416, 0.426],
49-
[0.097, 0.047, 0.044],
50-
[0.079, 0.021, 0.018],
51-
[0.08, 0.023, 0.021],
52-
[0.152, 0.074, 0.066],
53-
[0.079, 0.02, 0.015],
54-
[0.077, 0.02, 0.016],
55-
[0.08, 0.022, 0.021]
13+
[0.055, 0.008, 0.007],
14+
[0.13, 0.012, 0.01],
15+
[0.691, 0.029, 0.028],
16+
[0.436, 0.043, 0.042],
17+
[0.499, 0.258, 0.257],
18+
[1.237, 0.431, 0.425],
19+
[0.117, 0.014, 0.014],
20+
[0.147, 0.017, 0.017],
21+
[1.268, 0.356, 0.358],
22+
[2.798, 0.503, 0.507],
23+
[1.344, 0.138, 0.131],
24+
[1.657, 0.146, 0.139],
25+
[1.252, 0.394, 0.389],
26+
[2.838, 0.694, 0.687],
27+
[1.839, 0.424, 0.421],
28+
[0.549, 0.32, 0.321],
29+
[2.791, 0.852, 0.861],
30+
[2.536, 0.57, 0.577],
31+
[5.571, 1.525, 1.532],
32+
[0.17, 0.013, 0.012],
33+
[17.947, 0.474, 0.469],
34+
[19.808, 0.488, 0.483],
35+
[25.45, 1.293, 1.014],
36+
[2.064, 0.127, 0.126],
37+
[0.165, 0.038, 0.04],
38+
[1.156, 0.145, 0.143],
39+
[0.164, 0.036, 0.035],
40+
[18.303, 0.36, 0.359],
41+
[13.179, 7.927, 7.987],
42+
[0.203, 0.051, 0.044],
43+
[4.466, 0.338, 0.342],
44+
[7.257, 0.417, 0.41],
45+
[6.178, 1.684, 1.724],
46+
[18.424, 1.679, 1.668],
47+
[18.451, 1.782, 1.783],
48+
[0.605, 0.417, 0.418],
49+
[0.131, 0.04, 0.042],
50+
[0.094, 0.02, 0.02],
51+
[0.105, 0.022, 0.022],
52+
[0.213, 0.068, 0.073],
53+
[0.112, 0.019, 0.016],
54+
[0.104, 0.018, 0.015],
55+
[0.098, 0.023, 0.023]
5656
]
5757
}

gizmosql/run.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@ TEMP_SQL_FILE="/tmp/benchmark_queries_$$.sql"
99
# Ensure server is stopped on script exit
1010
trap stop_gizmosql EXIT
1111

12-
echo "Clear Linux memory caches to ensure fair benchmark comparisons"
13-
sync
14-
echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null
15-
1612
# Read queries from file
1713
mapfile -t queries < queries.sql
1814

@@ -21,6 +17,10 @@ echo "Running benchmark with ${#queries[@]} queries, ${TRIES} tries each..."
2117
for query in "${queries[@]}"; do
2218
> "${TEMP_SQL_FILE}"
2319

20+
# Clear Linux memory caches to ensure fair benchmark comparisons
21+
sync
22+
echo 3 | tee /proc/sys/vm/drop_caches > /dev/null
23+
2424
# Start the GizmoSQL server
2525
start_gizmosql
2626

0 commit comments

Comments
 (0)