mirror of
https://git.rtems.org/rtems-docs/
synced 2025-05-14 23:19:35 +08:00
eng: Rework performance meansurement items
Use links to specify runtime performance limits in target-specific items. Clarify wording. Update #3715.
This commit is contained in:
parent
6baa2d628b
commit
6dc190beea
@ -122,6 +122,9 @@ Glossary
|
|||||||
software as it is originally written (i.e., typed into a computer) by a
|
software as it is originally written (i.e., typed into a computer) by a
|
||||||
human in plain text (i.e., human readable alphanumeric characters)."
|
human in plain text (i.e., human readable alphanumeric characters)."
|
||||||
|
|
||||||
|
target
|
||||||
|
The system on which the application will ultimately execute.
|
||||||
|
|
||||||
task
|
task
|
||||||
This project uses the
|
This project uses the
|
||||||
`thread definition of Wikipedia <https://en.wikipedia.org/wiki/Thread_(computing)>`_:
|
`thread definition of Wikipedia <https://en.wikipedia.org/wiki/Thread_(computing)>`_:
|
||||||
|
@ -113,6 +113,8 @@ The specification item types have the following hierarchy:
|
|||||||
|
|
||||||
* :ref:`SpecTypeGenericNonFunctionalRequirementItemType`
|
* :ref:`SpecTypeGenericNonFunctionalRequirementItemType`
|
||||||
|
|
||||||
|
* :ref:`SpecTypeRuntimeMeasurementEnvironmentItemType`
|
||||||
|
|
||||||
* :ref:`SpecTypeRuntimePerformanceRequirementItemType`
|
* :ref:`SpecTypeRuntimePerformanceRequirementItemType`
|
||||||
|
|
||||||
* :ref:`SpecTypeRequirementValidationItemType`
|
* :ref:`SpecTypeRequirementValidationItemType`
|
||||||
@ -1950,6 +1952,8 @@ This type is refined by the following types:
|
|||||||
|
|
||||||
* :ref:`SpecTypeGenericNonFunctionalRequirementItemType`
|
* :ref:`SpecTypeGenericNonFunctionalRequirementItemType`
|
||||||
|
|
||||||
|
* :ref:`SpecTypeRuntimeMeasurementEnvironmentItemType`
|
||||||
|
|
||||||
* :ref:`SpecTypeRuntimePerformanceRequirementItemType`
|
* :ref:`SpecTypeRuntimePerformanceRequirementItemType`
|
||||||
|
|
||||||
.. _SpecTypeDesignGroupRequirementItemType:
|
.. _SpecTypeDesignGroupRequirementItemType:
|
||||||
@ -2001,6 +2005,10 @@ This type refines the following types:
|
|||||||
* :ref:`SpecTypeNonFunctionalRequirementItemType` through the
|
* :ref:`SpecTypeNonFunctionalRequirementItemType` through the
|
||||||
``non-functional-type`` attribute if the value is ``performance``
|
``non-functional-type`` attribute if the value is ``performance``
|
||||||
|
|
||||||
|
* :ref:`SpecTypeNonFunctionalRequirementItemType` through the
|
||||||
|
``non-functional-type`` attribute if the value is
|
||||||
|
``performance-runtime-limits``
|
||||||
|
|
||||||
* :ref:`SpecTypeNonFunctionalRequirementItemType` through the
|
* :ref:`SpecTypeNonFunctionalRequirementItemType` through the
|
||||||
``non-functional-type`` attribute if the value is ``portability``
|
``non-functional-type`` attribute if the value is ``portability``
|
||||||
|
|
||||||
@ -2019,6 +2027,22 @@ This type refines the following types:
|
|||||||
Items of this type state a non-functional requirement with the non-functional
|
Items of this type state a non-functional requirement with the non-functional
|
||||||
type defined by the specification type refinement.
|
type defined by the specification type refinement.
|
||||||
|
|
||||||
|
.. _SpecTypeRuntimeMeasurementEnvironmentItemType:
|
||||||
|
|
||||||
|
Runtime Measurement Environment Item Type
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
This type refines the :ref:`SpecTypeNonFunctionalRequirementItemType` through
|
||||||
|
the ``non-functional-type`` attribute if the value is
|
||||||
|
``performance-runtime-environment``. This set of attributes specifies a runtime
|
||||||
|
measurement environment. All explicit attributes shall be specified. The
|
||||||
|
explicit attributes for this type are:
|
||||||
|
|
||||||
|
name
|
||||||
|
The attribute value shall be a string. It shall be the runtime measurement
|
||||||
|
environment name. See also
|
||||||
|
:ref:`SpecTypeRuntimeMeasurementEnvironmentName`.
|
||||||
|
|
||||||
.. _SpecTypeRuntimePerformanceRequirementItemType:
|
.. _SpecTypeRuntimePerformanceRequirementItemType:
|
||||||
|
|
||||||
Runtime Performance Requirement Item Type
|
Runtime Performance Requirement Item Type
|
||||||
@ -2067,9 +2091,6 @@ the requirement, the validation test code to execute a measure runtime request
|
|||||||
is specified. All explicit attributes shall be specified. The explicit
|
is specified. All explicit attributes shall be specified. The explicit
|
||||||
attributes for this type are:
|
attributes for this type are:
|
||||||
|
|
||||||
limits
|
|
||||||
The attribute value shall be a :ref:`SpecTypeRuntimePerformanceLimitTable`.
|
|
||||||
|
|
||||||
params
|
params
|
||||||
The attribute value shall be a
|
The attribute value shall be a
|
||||||
:ref:`SpecTypeRuntimePerformanceParameterSet`.
|
:ref:`SpecTypeRuntimePerformanceParameterSet`.
|
||||||
@ -2105,34 +2126,11 @@ Please have a look at the following example:
|
|||||||
|
|
||||||
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
|
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
|
||||||
copyrights:
|
copyrights:
|
||||||
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
|
- Copyright (C) 2020 embedded brains GmbH & Co. KG
|
||||||
enabled-by: true
|
enabled-by: true
|
||||||
links:
|
links:
|
||||||
- role: runtime-measurement-request
|
- role: runtime-measurement-request
|
||||||
uid: ../val/performance
|
uid: ../val/perf
|
||||||
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: {}
|
params: {}
|
||||||
rationale: null
|
rationale: null
|
||||||
references: []
|
references: []
|
||||||
@ -2159,11 +2157,11 @@ Please have a look at the following example:
|
|||||||
return tic == toc;
|
return tic == toc;
|
||||||
description: null
|
description: null
|
||||||
text: |
|
text: |
|
||||||
When a partition has exactly ${../val/performance:/params/buffer-count} free
|
When a partition has exactly ${../val/perf:/params/buffer-count} free
|
||||||
buffers, the ${.:limit-kind} runtime of exactly
|
buffers, the ${.:/limit-kind} runtime of exactly
|
||||||
${../val/performance:/params/sample-count} successful calls to
|
${../val/perf:/params/sample-count} successful calls to
|
||||||
${../if/get-buffer:/name} in the ${.:/environment} shall be
|
${../if/get-buffer:/name} in the ${.:/environment} shall be
|
||||||
${.:limit-condition}.
|
${.:/limit-condition}.
|
||||||
non-functional-type: performance-runtime
|
non-functional-type: performance-runtime
|
||||||
requirement-type: non-functional
|
requirement-type: non-functional
|
||||||
type: requirement
|
type: requirement
|
||||||
@ -4448,6 +4446,8 @@ This type is refined by the following types:
|
|||||||
|
|
||||||
* :ref:`SpecTypeInterfaceTargetLinkRole`
|
* :ref:`SpecTypeInterfaceTargetLinkRole`
|
||||||
|
|
||||||
|
* :ref:`SpecTypePerformanceRuntimeLimitsLinkRole`
|
||||||
|
|
||||||
* :ref:`SpecTypePlacementOrderLinkRole`
|
* :ref:`SpecTypePlacementOrderLinkRole`
|
||||||
|
|
||||||
* :ref:`SpecTypeRequirementRefinementLinkRole`
|
* :ref:`SpecTypeRequirementRefinementLinkRole`
|
||||||
@ -4529,6 +4529,20 @@ A value of this type shall be of one of the following variants:
|
|||||||
|
|
||||||
* The value may be a string.
|
* The value may be a string.
|
||||||
|
|
||||||
|
.. _SpecTypePerformanceRuntimeLimitsLinkRole:
|
||||||
|
|
||||||
|
Performance Runtime Limits Link Role
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
This type refines the :ref:`SpecTypeLink` through the ``role`` attribute if the
|
||||||
|
value is ``performance-runtime-limits``. It defines the performance runtime
|
||||||
|
limits role of links. All explicit attributes shall be specified. The explicit
|
||||||
|
attributes for this type are:
|
||||||
|
|
||||||
|
limits
|
||||||
|
The attribute value shall be a
|
||||||
|
:ref:`SpecTypeRuntimeMeasurementEnvironmentTable`.
|
||||||
|
|
||||||
.. _SpecTypePlacementOrderLinkRole:
|
.. _SpecTypePlacementOrderLinkRole:
|
||||||
|
|
||||||
Placement Order Link Role
|
Placement Order Link Role
|
||||||
@ -4742,13 +4756,13 @@ Requirement Validation Link Role
|
|||||||
This type refines the :ref:`SpecTypeLink` through the ``role`` attribute if the
|
This type refines the :ref:`SpecTypeLink` through the ``role`` attribute if the
|
||||||
value is ``validation``. It defines the requirement validation role of links.
|
value is ``validation``. It defines the requirement validation role of links.
|
||||||
|
|
||||||
.. _SpecTypeRuntimeMeasurementEnvironment:
|
.. _SpecTypeRuntimeMeasurementEnvironmentName:
|
||||||
|
|
||||||
Runtime Measurement Environment
|
Runtime Measurement Environment Name
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
The value shall be a string. It specifies the runtime measurement environment.
|
The value shall be a string. It specifies the runtime measurement environment
|
||||||
The value
|
name. The value
|
||||||
|
|
||||||
* shall be an element of
|
* shall be an element of
|
||||||
|
|
||||||
@ -4771,12 +4785,12 @@ Runtime Measurement Environment Table
|
|||||||
|
|
||||||
This set of attributes provides runtime performance limits for a set of runtime
|
This set of attributes provides runtime performance limits for a set of runtime
|
||||||
measurement environments. Generic attributes may be specified. Each generic
|
measurement environments. Generic attributes may be specified. Each generic
|
||||||
attribute key shall be a :ref:`SpecTypeRuntimeMeasurementEnvironment`. Each
|
attribute key shall be a :ref:`SpecTypeRuntimeMeasurementEnvironmentName`. Each
|
||||||
generic attribute value shall be a :ref:`SpecTypeRuntimeMeasurementValueTable`.
|
generic attribute value shall be a :ref:`SpecTypeRuntimeMeasurementValueTable`.
|
||||||
|
|
||||||
This type is used by the following types:
|
This type is used by the following types:
|
||||||
|
|
||||||
* :ref:`SpecTypeRuntimePerformanceLimitTable`
|
* :ref:`SpecTypePerformanceRuntimeLimitsLinkRole`
|
||||||
|
|
||||||
.. _SpecTypeRuntimeMeasurementParameterSet:
|
.. _SpecTypeRuntimeMeasurementParameterSet:
|
||||||
|
|
||||||
@ -4852,21 +4866,6 @@ This type is used by the following types:
|
|||||||
|
|
||||||
* :ref:`SpecTypeRuntimeMeasurementEnvironmentTable`
|
* :ref:`SpecTypeRuntimeMeasurementEnvironmentTable`
|
||||||
|
|
||||||
.. _SpecTypeRuntimePerformanceLimitTable:
|
|
||||||
|
|
||||||
Runtime Performance Limit Table
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
This set of attributes provides runtime performance limits for BSP variants
|
|
||||||
specified by ``"<arch>/<bsp>"`` with <arch> being the architecture of the BSP
|
|
||||||
and <bsp> being the base name of the BSP. Generic attributes may be specified.
|
|
||||||
Each generic attribute key shall be a string. Each generic attribute value
|
|
||||||
shall be a :ref:`SpecTypeRuntimeMeasurementEnvironmentTable`.
|
|
||||||
|
|
||||||
This type is used by the following types:
|
|
||||||
|
|
||||||
* :ref:`SpecTypeRuntimePerformanceRequirementItemType`
|
|
||||||
|
|
||||||
.. _SpecTypeRuntimePerformanceParameterSet:
|
.. _SpecTypeRuntimePerformanceParameterSet:
|
||||||
|
|
||||||
Runtime Performance Parameter Set
|
Runtime Performance Parameter Set
|
||||||
|
Loading…
x
Reference in New Issue
Block a user