SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause copyrights: - Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de) enabled-by: RTEMS_SMP limits: sparc/gr712rc/smp/qual-only/aQM5D84izENqUHf5JXZtqffaL5bD4qBjf9HOSNfAMBY=: DirtyCache: max-upper-bound: 7.075199999999999e-05 median-lower-bound: 4.7168000000000006e-05 median-upper-bound: 7.075199999999999e-05 min-lower-bound: 4.64e-05 FullCache: max-upper-bound: 5.1552000000000004e-05 median-lower-bound: 1.1200000000000001e-05 median-upper-bound: 1.68e-05 min-lower-bound: 1.1200000000000001e-05 HotCache: max-upper-bound: 1.68e-05 median-lower-bound: 1.0368e-05 median-upper-bound: 1.5552e-05 min-lower-bound: 1.0368e-05 Load/1: max-upper-bound: 8.035199999999999e-05 median-lower-bound: 5.3568e-05 median-upper-bound: 8.035199999999999e-05 min-lower-bound: 5.28e-05 Load/2: max-upper-bound: 9.12e-05 median-lower-bound: 6.08e-05 median-upper-bound: 9.12e-05 min-lower-bound: 5.9968e-05 sparc/gr740/smp/qual-only/3Y1G8SMm2FRTpZB5_0NhbpDnatbEYmbDLLW58d-wXuY=: DirtyCache: max-upper-bound: 2.124e-05 median-lower-bound: 1.416e-05 median-upper-bound: 2.124e-05 min-lower-bound: 1.416e-05 FullCache: max-upper-bound: 2.0927999999999997e-05 median-lower-bound: 1.3952e-05 median-upper-bound: 2.0927999999999997e-05 min-lower-bound: 1.392e-05 HotCache: max-upper-bound: 2.1096e-05 median-lower-bound: 1.4064000000000001e-05 median-upper-bound: 2.1096e-05 min-lower-bound: 1.3936e-05 Load/1: max-upper-bound: 2.6832e-05 median-lower-bound: 1.7888e-05 median-upper-bound: 2.6832e-05 min-lower-bound: 1.7888e-05 Load/2: max-upper-bound: 2.7024e-05 median-lower-bound: 1.8016e-05 median-upper-bound: 2.7024e-05 min-lower-bound: 1.7824e-05 Load/3: max-upper-bound: 2.6832e-05 median-lower-bound: 1.7888e-05 median-upper-bound: 2.6832e-05 min-lower-bound: 1.7888e-05 Load/4: max-upper-bound: 2.7024e-05 median-lower-bound: 1.8016e-05 median-upper-bound: 2.7024e-05 min-lower-bound: 1.7824e-05 sparc/gr740/smp/qual-only/qpmWME3Tk2kfoQL1kmgyerzkvLKkrfPY7xWIWGfY0Fg=: DirtyCache: max-upper-bound: 3.084e-05 median-lower-bound: 1.8832000000000002e-05 median-upper-bound: 2.8248e-05 min-lower-bound: 1.8358400000000004e-05 FullCache: max-upper-bound: 9.9648e-06 median-lower-bound: 5.3536e-06 median-upper-bound: 8.030399999999999e-06 min-lower-bound: 5.3280000000000005e-06 HotCache: max-upper-bound: 4.420799999999999e-06 median-lower-bound: 2.7456e-06 median-upper-bound: 4.118399999999999e-06 min-lower-bound: 2.7456e-06 Load/1: max-upper-bound: 5.03376e-05 median-lower-bound: 2.02656e-05 median-upper-bound: 3.03984e-05 min-lower-bound: 1.97632e-05 Load/2: max-upper-bound: 0.000160368 median-lower-bound: 0.000104944 median-upper-bound: 0.00015741599999999998 min-lower-bound: 0.0001036384 Load/3: max-upper-bound: 0.000254016 median-lower-bound: 0.00016744640000000002 median-upper-bound: 0.0002511696 min-lower-bound: 0.00016398080000000001 Load/4: max-upper-bound: 0.00029117279999999997 median-lower-bound: 0.00019326720000000002 median-upper-bound: 0.0002899008 min-lower-bound: 0.00018929920000000002 links: - role: requirement-refinement uid: perf-runtime - role: runtime-measurement-request uid: ../val/perf non-functional-type: performance-runtime params: {} rationale: null references: [] requirement-type: non-functional test-body: brief: | Move the worker to scheduler A. code: | ctx->status = rtems_task_set_scheduler( ctx->worker_id, SCHEDULER_A_ID, PRIO_LOW ); description: null test-cleanup: brief: | Delete the worker task. code: | DeleteTask( ctx->worker_id ); description: null test-prepare: brief: | Create and start a worker task for scheduler B. code: | ctx->worker_id = CreateTask( "WORK", PRIO_NORMAL ); SetScheduler( ctx->worker_id, SCHEDULER_B_ID, PRIO_NORMAL ); StartTask( ctx->worker_id, Worker, ctx ); description: null test-setup: null test-teardown: brief: | Move the worker back to scheduler B. Discard samples interrupted by a clock tick. code: | T_quiet_rsc_success( ctx->status ); SetScheduler( ctx->worker_id, SCHEDULER_B_ID, PRIO_NORMAL ); return tic == toc; description: null text: | While the execution environment is ${.:/environment}, while the measurement sample is the runtime of exactly one successful call to ${../if/set-scheduler:/name} which moves the task to the home scheduler of the caller which does not preempt the caller, when exactly ${../val/perf:/params/sample-count} samples are collected, the ${.:/limit-kind} shall be ${.:/limit-condition}. type: requirement