summaryrefslogtreecommitdiffstats
path: root/spec/rtems/message/req/perf-receive-try.yml
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-11-25 10:03:22 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-11-25 11:31:09 +0100
commit9d7f2a1cf614ce4d55bdf5ade4c25424570dae44 (patch)
tree967e84375ebb7cf6fc6f4fa4c5b6a36dd44e8820 /spec/rtems/message/req/perf-receive-try.yml
parentspec: Workaround for broken document generator (diff)
downloadrtems-central-9d7f2a1cf614ce4d55bdf5ade4c25424570dae44.tar.bz2
spec: Add performance requirements
Diffstat (limited to 'spec/rtems/message/req/perf-receive-try.yml')
-rw-r--r--spec/rtems/message/req/perf-receive-try.yml48
1 files changed, 48 insertions, 0 deletions
diff --git a/spec/rtems/message/req/perf-receive-try.yml b/spec/rtems/message/req/perf-receive-try.yml
new file mode 100644
index 00000000..8f82458f
--- /dev/null
+++ b/spec/rtems/message/req/perf-receive-try.yml
@@ -0,0 +1,48 @@
+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: true
+limits: {}
+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: |
+ Try to receive a message.
+ code: |
+ uint64_t message;
+ size_t size;
+
+ ctx->status = rtems_message_queue_receive(
+ ctx->queue_id,
+ &message,
+ &size,
+ RTEMS_NO_WAIT,
+ 0
+ );
+ description: null
+test-cleanup: null
+test-prepare: null
+test-setup: null
+test-teardown:
+ brief: |
+ Discard samples interrupted by a clock tick.
+ code: |
+ T_quiet_rsc( ctx->status, RTEMS_UNSATISFIED );
+
+ return tic == toc;
+ description: null
+text: |
+ While the execution environment is ${.:/environment}, while a message queue
+ is empty, while the measurement sample is the runtime of exactly one
+ unsatisfied call to ${../if/send:/name}, when exactly
+ ${../val/perf:/params/sample-count} samples are collected, the
+ ${.:/limit-kind} shall be ${.:/limit-condition}.
+type: requirement