blob: 8cd32e0fd253a56bb359fde6fbd3304deb80118d (
plain) (
tree)
|
|
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: 0.00013199999999999998
median-lower-bound: 8.716800000000002e-05
median-upper-bound: 0.00013075199999999998
min-lower-bound: 8.716800000000002e-05
FullCache:
max-upper-bound: 0.00010320000000000001
median-lower-bound: 2.88e-05
median-upper-bound: 4.319999999999999e-05
min-lower-bound: 2.88e-05
HotCache:
max-upper-bound: 4.1952e-05
median-lower-bound: 2.7968e-05
median-upper-bound: 4.1952e-05
min-lower-bound: 2.7200000000000004e-05
Load/1:
max-upper-bound: 0.00013075199999999998
median-lower-bound: 8.716800000000002e-05
median-upper-bound: 0.00013075199999999998
min-lower-bound: 8.64e-05
Load/2:
max-upper-bound: 0.00014879999999999998
median-lower-bound: 9.8368e-05
median-upper-bound: 0.000147552
min-lower-bound: 9.760000000000001e-05
sparc/gr740/smp/qual-only/3Y1G8SMm2FRTpZB5_0NhbpDnatbEYmbDLLW58d-wXuY=:
DirtyCache:
max-upper-bound: 4.6751999999999996e-05
median-lower-bound: 3.0944e-05
median-upper-bound: 4.6416000000000004e-05
min-lower-bound: 3.0592e-05
FullCache:
max-upper-bound: 4.6031999999999996e-05
median-lower-bound: 3.0416e-05
median-upper-bound: 4.5623999999999996e-05
min-lower-bound: 2.9568e-05
HotCache:
max-upper-bound: 4.5552e-05
median-lower-bound: 3.0368000000000005e-05
median-upper-bound: 4.5552e-05
min-lower-bound: 3.0352e-05
Load/1:
max-upper-bound: 5.1432e-05
median-lower-bound: 3.4112e-05
median-upper-bound: 5.1167999999999995e-05
min-lower-bound: 3.3488e-05
Load/2:
max-upper-bound: 5.1263999999999996e-05
median-lower-bound: 3.3888000000000005e-05
median-upper-bound: 5.0832e-05
min-lower-bound: 3.3232e-05
Load/3:
max-upper-bound: 5.1288e-05
median-lower-bound: 3.4064000000000005e-05
median-upper-bound: 5.1096e-05
min-lower-bound: 3.3168e-05
Load/4:
max-upper-bound: 5.1504e-05
median-lower-bound: 3.4160000000000005e-05
median-upper-bound: 5.124e-05
min-lower-bound: 3.3936e-05
sparc/gr740/smp/qual-only/qpmWME3Tk2kfoQL1kmgyerzkvLKkrfPY7xWIWGfY0Fg=:
DirtyCache:
max-upper-bound: 5.02416e-05
median-lower-bound: 2.8867200000000004e-05
median-upper-bound: 4.3300800000000004e-05
min-lower-bound: 2.82432e-05
FullCache:
max-upper-bound: 5.49552e-05
median-lower-bound: 1.2342399999999999e-05
median-upper-bound: 1.85136e-05
min-lower-bound: 1.2300800000000001e-05
HotCache:
max-upper-bound: 1.0128e-05
median-lower-bound: 6.6144e-06
median-upper-bound: 9.921599999999998e-06
min-lower-bound: 6.6144e-06
Load/1:
max-upper-bound: 6.51216e-05
median-lower-bound: 2.72448e-05
median-upper-bound: 4.08672e-05
min-lower-bound: 2.6864000000000002e-05
Load/2:
max-upper-bound: 0.00022214399999999997
median-lower-bound: 0.0001475328
median-upper-bound: 0.00022129919999999998
min-lower-bound: 0.0001462464
Load/3:
max-upper-bound: 0.0003871536
median-lower-bound: 0.000253024
median-upper-bound: 0.000379536
min-lower-bound: 0.0002496864
Load/4:
max-upper-bound: 0.0004954272
median-lower-bound: 0.0003234784
median-upper-bound: 0.0004852176
min-lower-bound: 0.00032144320000000005
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: |
Send two events. Satisfy the event condition.
code: |
ctx->begin = T_tick();
ctx->status = rtems_event_send( ctx->worker_id, EVENT_END | EVENT_OTHER );
description: null
test-cleanup:
brief: |
Move worker to scheduler A.
code: |
SetScheduler( ctx->worker_id, SCHEDULER_A_ID, PRIO_HIGH );
description: null
test-prepare:
brief: |
Move worker to scheduler B.
code: |
SetScheduler( ctx->worker_id, SCHEDULER_B_ID, PRIO_NORMAL );
description: null
test-setup: null
test-teardown:
brief: |
Make sure the worker waits for the next event. Set the measured runtime.
Discard samples interrupted by a clock tick.
code: |
T_quiet_rsc_success( ctx->status );
WaitForNextTask( 1, ctx->worker_id );
*delta = ctx->end - ctx->begin;
return tic == toc;
description: null
text: |
Let U and V be two tasks with distinct home schedulers. Let :math:`B`
be a time point measured by U right before a call to ${../if/send:/name}
which does satisfy the event condition of the waiting task V which is
scheduled on another processor. Let :math:`E` be a time point measured by
V right after the first context switch after :math:`B`.
While the execution environment is ${.:/environment}, while the task V
waits for events, while the measurement sample is :math:`E - B`, when exactly
${../val/perf:/params/sample-count} samples are collected, the
${.:/limit-kind} shall be ${.:/limit-condition}.
type: requirement
|