diff options
Diffstat (limited to 'spec/rtems/part/req')
-rw-r--r-- | spec/rtems/part/req/perf-get-buffer.yml | 64 | ||||
-rw-r--r-- | spec/rtems/part/req/perf-get-no-buffer.yml | 52 | ||||
-rw-r--r-- | spec/rtems/part/req/perf-return-buffer.yml | 45 |
3 files changed, 161 insertions, 0 deletions
diff --git a/spec/rtems/part/req/perf-get-buffer.yml b/spec/rtems/part/req/perf-get-buffer.yml new file mode 100644 index 00000000..09f84fe9 --- /dev/null +++ b/spec/rtems/part/req/perf-get-buffer.yml @@ -0,0 +1,64 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: runtime-measurement-request + uid: ../val/performance +limits: + sparc/leon3: + DirtyCache: + max-upper-bound: 0.000005 + mean-upper-bound: 0.000005 + FullCache: + max-upper-bound: 0.000005 + mean-upper-bound: 0.000005 + HotCache: + max-upper-bound: 0.000005 + mean-upper-bound: 0.000005 + Load/1: + max-upper-bound: 0.00001 + mean-upper-bound: 0.00001 + Load/2: + max-upper-bound: 0.00001 + mean-upper-bound: 0.00001 + Load/3: + max-upper-bound: 0.00001 + mean-upper-bound: 0.00001 + Load/4: + max-upper-bound: 0.00001 + mean-upper-bound: 0.00001 +params: {} +rationale: null +references: [] +test-body: + brief: | + Get a buffer. + code: | + ctx->status = rtems_partition_get_buffer( ctx->part_many, &ctx->buffer ); + description: null +test-cleanup: null +test-prepare: null +test-setup: null +test-teardown: + brief: | + Return the buffer. + code: | + rtems_status_code sc; + + T_quiet_rsc_success( ctx->status ); + + sc = rtems_partition_return_buffer( ctx->part_many, ctx->buffer ); + T_quiet_rsc_success( sc ); + + return tic == toc; + description: null +text: | + When a partition has exactly ${../val/performance:/params/buffer-count} free + buffers, the ${.:limit-kind} runtime of exactly + ${../val/performance:/params/sample-count} successful calls to + ${../if/get-buffer:/name} in the ${.:/environment} shall be + ${.:limit-condition}. +non-functional-type: performance-runtime +requirement-type: non-functional +type: requirement diff --git a/spec/rtems/part/req/perf-get-no-buffer.yml b/spec/rtems/part/req/perf-get-no-buffer.yml new file mode 100644 index 00000000..0115fbef --- /dev/null +++ b/spec/rtems/part/req/perf-get-no-buffer.yml @@ -0,0 +1,52 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: runtime-measurement-request + uid: ../val/performance +limits: {} +params: {} +rationale: null +references: [] +test-body: + brief: | + Try to get a buffer. + code: | + ctx->status = rtems_partition_get_buffer( ctx->part_one, &ctx->buffer ); + description: null +test-cleanup: + brief: | + Return the buffer. + code: | + rtems_status_code sc; + + sc = rtems_partition_return_buffer( ctx->part_one, ctx->buffer_2 ); + T_rsc_success( sc ); + description: null +test-prepare: + brief: | + Get the buffer. + code: | + rtems_status_code sc; + + sc = rtems_partition_get_buffer( ctx->part_one, &ctx->buffer_2 ); + T_rsc_success( sc ); + description: null +test-setup: null +test-teardown: + brief: | + Check the status code. + code: | + T_quiet_rsc( ctx->status, RTEMS_UNSATISFIED ); + + return tic == toc; + description: null +text: | + When a partition has no free buffers, the ${.:limit-kind} runtime of exactly + ${../val/performance:/params/sample-count} unsatisfied calls to + ${../if/get-buffer:/name} in the ${.:/environment} shall be + ${.:limit-condition}. +non-functional-type: performance-runtime +requirement-type: non-functional +type: requirement diff --git a/spec/rtems/part/req/perf-return-buffer.yml b/spec/rtems/part/req/perf-return-buffer.yml new file mode 100644 index 00000000..0199c361 --- /dev/null +++ b/spec/rtems/part/req/perf-return-buffer.yml @@ -0,0 +1,45 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: runtime-measurement-request + uid: ../val/performance +limits: {} +params: {} +rationale: null +references: [] +test-body: + brief: | + Return the buffer. + code: | + ctx->status = rtems_partition_return_buffer( ctx->part_many, ctx->buffer ); + description: null +test-cleanup: null +test-prepare: null +test-setup: + brief: | + Get the buffer. + code: | + rtems_status_code sc; + + sc = rtems_partition_get_buffer( ctx->part_many, &ctx->buffer ); + T_quiet_rsc_success( sc ); + description: null +test-teardown: + brief: | + Check the status code. + code: | + T_quiet_rsc( ctx->status, RTEMS_SUCCESSFUL ); + + return tic == toc; + description: null +text: | + When a partition has exactly ${../val/performance:/params/buffer-count} minus + one free buffers, the ${.:limit-kind} runtime of exactly + ${../val/performance:/params/sample-count} successful calls to + ${../if/return-buffer:/name} in the ${.:/environment} shall be + ${.:limit-condition}. +non-functional-type: performance-runtime +requirement-type: non-functional +type: requirement |