Skip to content

Commit 3511269

Browse files
committed
lava(sysbench): add Sysbench_Performance job template
Provide LAVA YAML to run sysbench suite on target devices. Expose key parameters (threads, iterations, delta, taskset). Store logs and summaries as job artifacts for analysis. Signed-off-by: Srikanth Muppandam <smuppand@qti.qualcomm.com>
1 parent d898109 commit 3511269

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
metadata:
2+
name: sysbench-performance
3+
format: "Lava-Test Test Definition 1.0"
4+
description: "Sysbench performance suite (CPU / memory / threads / mutex + fileio seqwr/seqrd/rndwr/rndrd) with per-iteration logs + summary averages + optional baseline gating."
5+
os:
6+
- linux
7+
scope:
8+
- performance
9+
- functional
10+
11+
params:
12+
OUT_DIR: "./logs_Sysbench_Performance"
13+
14+
# Iteration controls
15+
ITERATIONS: "3"
16+
TIME: "30"
17+
RAND_SEED: "1234"
18+
THREADS_LIST: "4" # space-separated list, e.g. "1 4 8 16"
19+
20+
# CPU
21+
CPU_MAX_PRIME: "20000"
22+
23+
# Threads test
24+
THREAD_LOCKS: "20"
25+
THREAD_YIELDS: "" # optional override; empty uses sysbench default
26+
27+
# Memory test
28+
MEMORY_OPER: "write" # read|write
29+
MEMORY_ACCESS_MODE: "rnd" # seq|rnd
30+
MEMORY_BLOCK_SIZE: "1M"
31+
MEMORY_TOTAL_SIZE: "100G" # keep explicit for stability
32+
33+
# Mutex test
34+
MUTEX_NUM: ""
35+
MUTEX_LOCKS: ""
36+
MUTEX_LOOPS: ""
37+
38+
# Core pinning (optional)
39+
TASKSET_CPU_LIST: ""
40+
41+
# Baselines + thresholds (optional gating; empty => report-only)
42+
# If empty, run.sh may auto-pick ./sysbench_baseline.conf from the test folder (if present)
43+
BASELINE_FILE: ""
44+
ALLOWED_DEVIATION: "0.10" # 0.05..0.10 typical
45+
46+
# Optional CSV append (NOT default). If empty, no CSV is written.
47+
CSV_FILE: ""
48+
49+
VERBOSE: "0" # 1|0
50+
51+
# ---------------- FileIO (storage-backed) ----------------
52+
# IMPORTANT: use storage-backed path (avoid tmpfs if you want stable IO numbers)
53+
FILEIO_DIR: "/var/tmp/sysbench_fileio"
54+
55+
# Stable fileio parameters (must match run.sh variable names)
56+
FILEIO_TOTAL_SIZE: "1G"
57+
FILEIO_NUM: "64" # <-- FIXED (was FILEIO_NUM_FILES, but run.sh reads FILEIO_NUM)
58+
FILEIO_BLOCK_SIZE: "4K"
59+
FILEIO_IO_MODE: "sync" # sync|async
60+
FILEIO_FSYNC_FREQ: "0"
61+
FILEIO_EXTRA_FLAGS: "none" # use "none" to disable extra flags in run.sh
62+
63+
# NOTE: run.sh currently runs all 4 modes (seqwr seqrd rndwr rndrd) unconditionally.
64+
# If you want FILEIO_MODE_LIST support, run.sh must be updated accordingly.
65+
# FILEIO_MODE_LIST: "seqwr seqrd rndwr"
66+
67+
run:
68+
steps:
69+
- REPO_PATH=$PWD
70+
- cd Runner/suites/Performance/Sysbench_Performance/
71+
- ./run.sh || true
72+
- $REPO_PATH/Runner/utils/send-to-lava.sh Sysbench_Performance.res || true

0 commit comments

Comments
 (0)