1common: 2 platform_key: 3 - arch 4 tags: 5 - kernel 6 - benchmark 7 # Native platforms excluded as they are not relevant: These benchmarks run some kernel primitives 8 # in a loop during a predefined time counting how many times they execute. But in the POSIX arch, 9 # time does not pass while the CPU executes. So the benchmark just appears as if hung. 10 arch_exclude: 11 - posix 12 # some slow qemu_* excluded 13 platform_exclude: 14 - qemu_malta/qemu_malta 15 - qemu_malta/qemu_malta/be 16 integration_platforms: 17 - qemu_x86_64 18 - qemu_cortex_a53/qemu_cortex_a53/smp 19 timeout: 300 20 filter: CONFIG_SMP and CONFIG_MP_MAX_NUM_CPUS > 1 21 harness: console 22 23tests: 24 benchmark.ipi_metric.preemptive.broadcast: 25 extra_configs: 26 - CONFIG_IPI_METRIC_PREEMPTIVE=y 27 - CONFIG_IPI_OPTIMIZE=n 28 harness_config: 29 type: multi_line 30 ordered: true 31 regex: 32 # Collect at least 3 measurements for each benchmark: 33 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 34 - "(.*)Preemptive Counter Total:[ ]*[0-9]+(.*)" 35 - "(.*)IPI Count:[ ]*[0-9]+(.*)" 36 - "(.*)Total Work:[ ]*[0-9]+(.*)" 37 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 38 - "(.*)Preemptive Counter Total:[ ]*[0-9]+(.*)" 39 - "(.*)IPI Count:[ ]*[0-9]+(.*)" 40 - "(.*)Total Work:[ ]*[0-9]+(.*)" 41 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 42 - "(.*)Preemptive Counter Total:[ ]*[0-9]+(.*)" 43 - "(.*)IPI Count:[ ]*[0-9]+(.*)" 44 - "(.*)Total Work:[ ]*[0-9]+(.*)" 45 46 benchmark.ipi_metric.preemptive.optimize: 47 extra_configs: 48 - CONFIG_IPI_METRIC_PREEMPTIVE=y 49 - CONFIG_IPI_OPTIMIZE=y 50 filter: ARCH_HAS_DIRECTED_IPIS 51 harness_config: 52 type: multi_line 53 ordered: true 54 regex: 55 # Collect at least 3 measurements for each benchmark: 56 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 57 - "(.*)Preemptive Counter Total:[ ]*[0-9]+(.*)" 58 - "(.*)IPI Count:[ ]*[0-9]+(.*)" 59 - "(.*)Total Work:[ ]*[0-9]+(.*)" 60 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 61 - "(.*)Preemptive Counter Total:[ ]*[0-9]+(.*)" 62 - "(.*)IPI Count:[ ]*[0-9]+(.*)" 63 - "(.*)Total Work:[ ]*[0-9]+(.*)" 64 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 65 - "(.*)Preemptive Counter Total:[ ]*[0-9]+(.*)" 66 - "(.*)IPI Count:[ ]*[0-9]+(.*)" 67 - "(.*)Total Work:[ ]*[0-9]+(.*)" 68 69 benchmark.ipi_metric.primitive.broadcast: 70 extra_configs: 71 - CONFIG_IPI_METRIC_PRIMITIVE_BROADCAST=y 72 harness_config: 73 type: multi_line 74 ordered: true 75 regex: 76 # Collect at least 3 measurements for each benchmark: 77 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 78 - "(.*)Schedule IPIs Issued:[ ]*[0-9]+(.*)" 79 - "(.*)Total Work:[ ]*[0-9]+(.*)" 80 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 81 - "(.*)Schedule IPIs Issued:[ ]*[0-9]+(.*)" 82 - "(.*)Total Work:[ ]*[0-9]+(.*)" 83 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 84 - "(.*)Schedule IPIs Issued:[ ]*[0-9]+(.*)" 85 - "(.*)Total Work:[ ]*[0-9]+(.*)" 86 87 88 benchmark.ipi_metric.primitive.directed: 89 extra_configs: 90 - CONFIG_IPI_METRIC_PRIMITIVE_DIRECTED=y 91 filter: ARCH_HAS_DIRECTED_IPIS 92 harness_config: 93 type: multi_line 94 ordered: true 95 regex: 96 # Collect at least 3 measurements for each benchmark: 97 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 98 - "(.*)Schedule IPIs Issued:[ ]*[0-9]+(.*)" 99 - "(.*)Total Work:[ ]*[0-9]+(.*)" 100 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 101 - "(.*)Schedule IPIs Issued:[ ]*[0-9]+(.*)" 102 - "(.*)Total Work:[ ]*[0-9]+(.*)" 103 - "(.*) IPI-Metric(.+) Elapsed Time:[ ]*[0-9]+(.*)" 104 - "(.*)Schedule IPIs Issued:[ ]*[0-9]+(.*)" 105 - "(.*)Total Work:[ ]*[0-9]+(.*)" 106