Benchmarks are not tests, we run them to verify they still work and do not bitrot. Running them on each architecture should be sufficient. This reduces amount of churn in CI and still allows them to be run individually on platforms. Signed-off-by: Anas Nashif <anas.nashif@intel.com>
57 lines
1.4 KiB
YAML
57 lines
1.4 KiB
YAML
common:
|
|
platform_key:
|
|
- arch
|
|
tags:
|
|
- kernel
|
|
- benchmark
|
|
# Native platforms excluded as they are not relevant: These benchmarks run some kernel primitives
|
|
# in a loop during a predefined time counting how many times they execute. But in the POSIX arch,
|
|
# time does not pass while the CPU executes. So the benchmark just appears as if hung.
|
|
arch_exclude:
|
|
- posix
|
|
# qemu_nios2 excluded as it is slow
|
|
platform_exclude:
|
|
- qemu_nios2
|
|
integration_platforms:
|
|
- qemu_x86
|
|
- qemu_cortex_a53
|
|
timeout: 300
|
|
harness: console
|
|
harness_config:
|
|
type: one_line
|
|
regex:
|
|
- "(.*) Relative Time: (.*)"
|
|
|
|
tests:
|
|
benchmark.thread_metric.basic:
|
|
extra_configs:
|
|
- CONFIG_TM_BASIC=y
|
|
|
|
benchmark.thread_metric.cooperative:
|
|
extra_configs:
|
|
- CONFIG_TM_COOPERATIVE=y
|
|
|
|
benchmark.thread_metric.interrupt:
|
|
extra_configs:
|
|
- CONFIG_TM_INTERRUPT=y
|
|
|
|
benchmark.thread_metric.interrupt_preemption:
|
|
extra_configs:
|
|
- CONFIG_TM_INTERRUPT_PREEMPTION=y
|
|
|
|
benchmark.thread_metric.memory_allocation:
|
|
extra_configs:
|
|
- CONFIG_TM_MEMORY_ALLOCATION=y
|
|
|
|
benchmark.thread_metric.message:
|
|
extra_configs:
|
|
- CONFIG_TM_MESSAGE=y
|
|
|
|
benchmark.thread_metric.preemptive:
|
|
extra_configs:
|
|
- CONFIG_TM_PREEMPTIVE=y
|
|
|
|
benchmark.thread_metric.synchronization:
|
|
extra_configs:
|
|
- CONFIG_TM_SYNCHRONIZATION=y
|