137 lines
4.1 KiB
YAML
137 lines
4.1 KiB
YAML
common:
|
|
tags:
|
|
- kernel
|
|
- benchmark
|
|
tests:
|
|
benchmark.kernel.latency:
|
|
# FIXME: no DWT and no RTC_TIMER for qemu_cortex_m0
|
|
platform_exclude:
|
|
- qemu_cortex_m0
|
|
- m2gl025_miv
|
|
filter: CONFIG_PRINTK and not CONFIG_SOC_FAMILY_STM32
|
|
harness: console
|
|
integration_platforms:
|
|
- qemu_x86
|
|
- qemu_arc/qemu_arc_em
|
|
harness_config:
|
|
type: one_line
|
|
record:
|
|
regex: "(?P<metric>.*) - (?P<description>.*):(?P<cycles>.*) cycles ,(?P<nanoseconds>.*) ns"
|
|
regex:
|
|
- "PROJECT EXECUTION SUCCESSFUL"
|
|
|
|
|
|
benchmark.kernel.latency.objcore.stats:
|
|
# FIXME: no DWT and no RTC_TIMER for qemu_cortex_m0
|
|
platform_exclude:
|
|
- qemu_cortex_m0
|
|
- m2gl025_miv
|
|
filter: CONFIG_PRINTK and not CONFIG_SOC_FAMILY_STM32
|
|
harness: console
|
|
integration_platforms:
|
|
- qemu_x86
|
|
- qemu_arc/qemu_arc_em
|
|
extra_configs:
|
|
- CONFIG_OBJ_CORE=y
|
|
- CONFIG_OBJ_CORE_STATS=y
|
|
harness_config:
|
|
type: one_line
|
|
record:
|
|
regex: "(?P<metric>.*) - (?P<description>.*):(?P<cycles>.*) cycles ,(?P<nanoseconds>.*) ns"
|
|
regex:
|
|
- "PROJECT EXECUTION SUCCESSFUL"
|
|
|
|
|
|
# Cortex-M has 24bit systick, so default 1 TICK per seconds
|
|
# is achievable only if frequency is below 0x00FFFFFF (around 16MHz)
|
|
# 20 Ticks per secondes allows a frequency up to 335544300Hz (335MHz)
|
|
benchmark.kernel.latency.stm32:
|
|
arch_allow: arm
|
|
filter: CONFIG_PRINTK and CONFIG_SOC_FAMILY_STM32
|
|
extra_configs:
|
|
- CONFIG_SYS_CLOCK_TICKS_PER_SEC=20
|
|
harness: console
|
|
harness_config:
|
|
type: one_line
|
|
record:
|
|
regex: "(?P<metric>.*) - (?P<description>.*):(?P<cycles>.*) cycles ,(?P<nanoseconds>.*) ns"
|
|
regex:
|
|
- "PROJECT EXECUTION SUCCESSFUL"
|
|
|
|
# Obtain the benchmark results for various user thread / kernel thread
|
|
# configurations on platforms that support user space.
|
|
benchmark.kernel.latency.userspace:
|
|
filter: CONFIG_ARCH_HAS_USERSPACE
|
|
timeout: 300
|
|
extra_configs:
|
|
- CONFIG_USERSPACE=y
|
|
harness: console
|
|
integration_platforms:
|
|
- qemu_x86
|
|
- qemu_cortex_a53
|
|
harness_config:
|
|
type: one_line
|
|
record:
|
|
regex: "(?P<metric>.*) - (?P<description>.*):(?P<cycles>.*) cycles ,(?P<nanoseconds>.*) ns"
|
|
regex:
|
|
- "PROJECT EXECUTION SUCCESSFUL"
|
|
|
|
# Obtain the benchmark results with object core statistics enabled for
|
|
# various user thread / kernel thread configurations on platforms that
|
|
# support user space
|
|
benchmark.kernel.latency.userspace.objcore.stats:
|
|
filter: CONFIG_ARCH_HAS_USERSPACE
|
|
timeout: 300
|
|
harness: console
|
|
integration_platforms:
|
|
- qemu_x86
|
|
- qemu_cortex_a53
|
|
extra_configs:
|
|
- CONFIG_USERSPACE=y
|
|
- CONFIG_OBJ_CORE=y
|
|
- CONFIG_OBJ_CORE_STATS=y
|
|
harness_config:
|
|
type: one_line
|
|
record:
|
|
regex: "(?P<metric>.*) - (?P<description>.*):(?P<cycles>.*) cycles ,(?P<nanoseconds>.*) ns"
|
|
regex:
|
|
- "PROJECT EXECUTION SUCCESSFUL"
|
|
|
|
# Obtain the various kernel benchmark results with time slicing enabled
|
|
benchmark.kernel.latency.timeslicing:
|
|
# FIXME: no DWT and no RTC_TIMER for qemu_cortex_m0
|
|
platform_exclude:
|
|
- qemu_cortex_m0
|
|
- m2gl025_miv
|
|
filter: CONFIG_PRINTK and not CONFIG_SOC_FAMILY_STM32
|
|
harness: console
|
|
integration_platforms:
|
|
- qemu_x86
|
|
- qemu_arc/qemu_arc_em
|
|
extra_configs:
|
|
- CONFIG_TIMESLICING=y
|
|
harness_config:
|
|
type: one_line
|
|
record:
|
|
regex: "(?P<metric>.*) - (?P<description>.*):(?P<cycles>.*) cycles ,(?P<nanoseconds>.*) ns"
|
|
regex:
|
|
- "PROJECT EXECUTION SUCCESSFUL"
|
|
|
|
# Obtain the various userspace benchmark results with timeslicing enabled
|
|
benchmark.kernel.latency.timeslicing.userspace:
|
|
filter: CONFIG_ARCH_HAS_USERSPACE
|
|
timeout: 300
|
|
harness: console
|
|
integration_platforms:
|
|
- qemu_x86
|
|
- qemu_cortex_a53
|
|
extra_configs:
|
|
- CONFIG_USERSPACE=y
|
|
- CONFIG_TIMESLICING=y
|
|
harness_config:
|
|
type: one_line
|
|
record:
|
|
regex: "(?P<metric>.*) - (?P<description>.*):(?P<cycles>.*) cycles ,(?P<nanoseconds>.*) ns"
|
|
regex:
|
|
- "PROJECT EXECUTION SUCCESSFUL"
|