1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
metadata:
format: Lava-Test Test Definition 1.0
name: S-suite
description: "The S-suite is a suite of I/O-performance benchmarks.
This test uses the S-suite to run, for every I/O scheduler
available for the target device, two main benchmarks:
1) A throughput benchmark, which measures throughput
with random and sequential sync I/O. In this respect,
sync I/O is the kind of I/O for which it is most
difficult to reach a higher throughput.
2) A responsiveness benchmark, which measures the start-up
time of various popular application, in the presence
of sequential I/O in the background (sequential
is the kind of background I/O that makes it more
difficult to guarantee a high responsiveness"
maintainer:
- paolo.valente@linaro.org
os:
- debian
- ubuntu
- fedora
- centos
- openembedded
scope:
- I/O performance
devices:
- x86
params:
# Set of tests: 'throughput' benchmarks throughput, while
# 'replayed-startup' benchmarks the start-up times of popular
# applications, by replaying their I/O. The replaying saves us
# from meeting all non-trivial dependencies of these applications
# (such as having an X session running). Results are
# indistinguishable w.r.t. to actually starting these applications.
TESTS: "throughput replayed-startup"
# Target device/partition: device/partition on which to
# execute the benchmarks. If a partition is specified, then
# the partition must contain a mounted filesystem. If a device
# (actual drive) is specified, then that drive must contain a
# partition ${TEST_DEV}1 in it, with a mounted fs in that
# partition. In both cases, test files are created in that
# filesystem.
TEST_DEV: "sda"
# If the following parameter is set to yes and TEST_DEV points
# to an actual drive, but the drive does not contain a mounted
# partition, then the drive is formatted, a partition with an
# ext4 fs is created on the drive, and that fs is used for the
# test.
FORMAT: "no"
# If the following parameter is set, then the S suite is
# cloned and used unconditionally. In particular, the version
# of the suite is set to the commit pointed to by the
# parameter. A simple choice for the value of the parameter
# is, e.g., HEAD. If, instead, the parameter is
# not set, then the suite present in S_PATH is used.
S_VERSION: ""
# If next parameter is set, then the S suite is cloned
# from the URL in S_URL. Otherwise it is cloned from the
# standard repository for the suite. Note that cloning is done
# only if S_VERSION is not empty
S_URL: ""
# If next parameter is set, then the S suite is cloned to or
# looked for in S_PATH. Otherwise it is cloned to $(pwd)/S
S_PATH: ""
# If next parameter is set to yes then only workloads made of
# only reads are generated in every benchmark.
ONLY_READS: "no"
# Number of times each benchmark is repeated.
NUM_REPETITIONS: "5"
run:
steps:
- cd ./automated/linux/ssuite/
- ./run-bench.sh -t "${TESTS}" -d "${TEST_DEV}" -f "${FORMAT}" -v "${S_VERSION}" -s "${SKIP_INSTALL}" -r "${ONLY_READS}" -p "${S_PATH}" -n "${NUM_REPETITIONS}"
- ../../utils/send-to-lava.sh ./output/result.txt
|