Skip to content

Commit 11826ae

Browse files
committed
lava(geekbench): add job template to run Geekbench suite and collect artifacts
- Run Geekbench runner from qcom-linux-testkit - Publish logs, CSV outputs, and final summary as test artifacts - Keep template generic for RB3/RB4/RB8 targets Signed-off-by: Srikanth Muppandam <smuppand@qti.qualcomm.com>
1 parent 8674a90 commit 11826ae

1 file changed

Lines changed: 117 additions & 0 deletions

File tree

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
metadata:
2+
name: geekbench-performance
3+
format: "Lava-Test Test Definition 1.0"
4+
description: >
5+
Geekbench 6 CPU performance runner with live console progress, per-iteration logs,
6+
readable CSV dumps (summary + workloads), and optional full metrics CSV.
7+
Designed for Yocto / LE platforms. LAVA-friendly runner (does not hard-fail the job).
8+
os:
9+
- linux
10+
scope:
11+
- performance
12+
- functional
13+
14+
params:
15+
# Output
16+
OUT_DIR: "./logs_Geekbench"
17+
RES_FILE: "" # optional, defaults to Geekbench.res in suite dir
18+
19+
# Outer loop (how many times run.sh invokes geekbench)
20+
RUNS: "1"
21+
22+
# Progress heartbeat
23+
HEARTBEAT_SECS: "15"
24+
25+
# Optional pinning
26+
CORE_LIST: "" # e.g. "0-3" or "0,2,4,6"
27+
28+
# Environment/stability
29+
SET_PERF_GOV: "1"
30+
31+
# Geekbench binary override (else run.sh auto-detects)
32+
GEEKBENCH_BIN: "geekbench_aarch64"
33+
34+
# Unlock (optional)
35+
UNLOCK_EMAIL: ""
36+
UNLOCK_KEY: ""
37+
38+
# Upload policy
39+
NO_UPLOAD: "1"
40+
UPLOAD: "0"
41+
42+
# Actions / modes (leave empty to run default CPU benchmark)
43+
CPU: "1"
44+
SYSINFO: "0"
45+
46+
# GPU (optional)
47+
GPU: "" # "" or "1" or "OpenCL"
48+
GPU_LIST: "0"
49+
GPU_PLATFORM_ID: ""
50+
GPU_DEVICE_ID: ""
51+
52+
# Pro options (optional)
53+
SECTION: "" # e.g. "1" or "1,2" or "1-3"
54+
WORKLOAD: "" # e.g. "1,4,7" or "1-10"
55+
WORKLOAD_LIST: "0"
56+
SINGLE_CORE: "0"
57+
MULTI_CORE: "0"
58+
CPU_WORKERS: "" # e.g. "8"
59+
GB_ITERATIONS: "" # geekbench internal --iterations
60+
WORKLOAD_GAP: "" # ms gap between workloads
61+
62+
# Export options (optional)
63+
LOAD_FILE: ""
64+
SAVE_FILE: ""
65+
EXPORT_CSV_FILE: ""
66+
EXPORT_HTML_FILE: ""
67+
EXPORT_JSON_FILE: ""
68+
EXPORT_XML_FILE: ""
69+
EXPORT_TEXT_FILE: ""
70+
EXPORT_LICENSE_DIR: ""
71+
72+
# Raw extra args appended as-is (space-separated)
73+
EXTRA_ARGS: ""
74+
75+
# Standalone mode (no init_env) if your run.sh supports it
76+
STANDALONE: "0"
77+
78+
run:
79+
steps:
80+
- REPO_PATH=$PWD
81+
- cd Runner/suites/Performance/Geekbench/ || exit 0
82+
- ./run.sh \
83+
--outdir "$OUT_DIR" \
84+
--res-file "${RES_FILE:-}" \
85+
--runs "$RUNS" \
86+
--core-list "${CORE_LIST:-}" \
87+
--bin "$GEEKBENCH_BIN" \
88+
--progress-heartbeat "$HEARTBEAT_SECS" \
89+
$( [ "$SET_PERF_GOV" = "1" ] && true || echo --no-perf-gov ) \
90+
$( [ "$NO_UPLOAD" = "1" ] && echo --no-upload || true ) \
91+
$( [ "$UPLOAD" = "1" ] && echo --upload || true ) \
92+
$( [ "$CPU" = "1" ] && echo --cpu || true ) \
93+
$( [ "$SYSINFO" = "1" ] && echo --sysinfo || true ) \
94+
$( [ -n "$GPU" ] && echo --gpu "$GPU" || true ) \
95+
$( [ "$GPU_LIST" = "1" ] && echo --gpu-list || true ) \
96+
$( [ -n "$GPU_PLATFORM_ID" ] && echo --gpu-platform-id "$GPU_PLATFORM_ID" || true ) \
97+
$( [ -n "$GPU_DEVICE_ID" ] && echo --gpu-device-id "$GPU_DEVICE_ID" || true ) \
98+
$( [ -n "$SECTION" ] && echo --section "$SECTION" || true ) \
99+
$( [ -n "$WORKLOAD" ] && echo --workload "$WORKLOAD" || true ) \
100+
$( [ "$WORKLOAD_LIST" = "1" ] && echo --workload-list || true ) \
101+
$( [ "$SINGLE_CORE" = "1" ] && echo --single-core || true ) \
102+
$( [ "$MULTI_CORE" = "1" ] && echo --multi-core || true ) \
103+
$( [ -n "$CPU_WORKERS" ] && echo --cpu-workers "$CPU_WORKERS" || true ) \
104+
$( [ -n "$GB_ITERATIONS" ] && echo --iterations "$GB_ITERATIONS" || true ) \
105+
$( [ -n "$WORKLOAD_GAP" ] && echo --workload-gap "$WORKLOAD_GAP" || true ) \
106+
$( [ -n "$LOAD_FILE" ] && echo --load "$LOAD_FILE" || true ) \
107+
$( [ -n "$SAVE_FILE" ] && echo --save "$SAVE_FILE" || true ) \
108+
$( [ -n "$EXPORT_CSV_FILE" ] && echo --export-csv "$EXPORT_CSV_FILE" || true ) \
109+
$( [ -n "$EXPORT_HTML_FILE" ] && echo --export-html "$EXPORT_HTML_FILE" || true ) \
110+
$( [ -n "$EXPORT_JSON_FILE" ] && echo --export-json "$EXPORT_JSON_FILE" || true ) \
111+
$( [ -n "$EXPORT_XML_FILE" ] && echo --export-xml "$EXPORT_XML_FILE" || true ) \
112+
$( [ -n "$EXPORT_TEXT_FILE" ] && echo --export-text "$EXPORT_TEXT_FILE" || true ) \
113+
$( [ -n "$EXPORT_LICENSE_DIR" ] && echo --export-license "$EXPORT_LICENSE_DIR" || true ) \
114+
$( [ -n "$UNLOCK_EMAIL" ] && [ -n "$UNLOCK_KEY" ] && echo --unlock "$UNLOCK_EMAIL" "$UNLOCK_KEY" || true ) \
115+
-- ${EXTRA_ARGS:-} \
116+
|| true
117+
- $REPO_PATH/Runner/utils/send-to-lava.sh Geekbench.res

0 commit comments

Comments
 (0)