Configuring the system page¶
Procedure¶
To configure the System
page, proceed as follows:
-
In the
Memory Reservation
field, you can specify the average memory consumption of your application. The minimum value is 6 MB and cannot be greater than theMemory Limit
. If the device reaches an overall critical memory consumption level, the system will try to reduce the memory consumption of each application to its reserved memory value. -
Select the unit of the memory reservation in the drop-down menu.
-
Enter the maximum amount of memory the application can use in the
Memory Limit
input field. The minimum value is 6 MB. If the application surpasses its memory limit, it is stopped. This ensures that the other running processes and applications on the device have enough memory available for their execution. -
Select the unit of the memory limit in the drop-down menu.
NOTICE
The amount of installed and running applications on a device is limited by their memory consumption. Upon the installation or start of an application, the application's memory reservation (or memory limit, if memory reservation is not set) is checked against the remaining available memory of the device. If there is not enough memory available, the application cannot be installed or started. Although it is optional to define the value for
Memory Reservation
, it is highly recommended to do so in order to achieve an efficient memory usage on the device. Since theMemory Limit
is usually significantly higher than the Memory Reservation, much more memory is virtually occupied by the application. This could result in either the application itself or other applications not being able to be additionally installed or started on a device. -
Specify which runtime to use for the application’s containers. The default value of the runtime is always
iedge
.
!!! info "NOTICE"
Runtime value must be set to iedge
to use CPU Allocation and GPU Allocation resources.
-
Configures the physical resources required for the application to run on the platform.
-
X-resources
: Siemens Industrial Edge Resource Manager resource claim specification. This is the 'x-resources' section in docker-compose service definitions.Limits
: A mapping of resource-class names and the amount of resources requested for this class. The keys can refer a true resource class or to an entry underdefinitions
.Definitions
: A custom definition for use in limits. This allows for fine-grained resource selection withmatchExpressions
.Type
: The parent resource-class this definition applies to. This does not modify the original resource class, but creates a new resource class name which can be used inlimits
to allow for a more fine grained resource allocation.-
limits
: Limit the specific number of CPUs, GPU or Shared Memory a container can use. A valid limit can range from 1-128. CPU Limits : Example : "siemens.com/isolated_core:1" GPU Limits : Example : "nvidia.com/gpu:1" Shared Memory : Example : "siemens.com/shared_memory" -
Optional
: A custom definition to indicate whether the resource claimed inlimits
isoptional
. Config
: Additional configuration for individual resource claims that should be transferred to the resource plugin.Shared
: If set to true allocations for this resource type are allocated from the pool of shared resources, if set to false from the pool of exclusive resources and if unset the resources of this type are allocated from the default pool as advertised by the plugin which can be either the pool of exclusive or the pool of shared resources.MatchExpressions
: List of expressions which constrain the selection of resource instances from the parent resource class. The list is a logical AND. A missing or emptymatchExpressions
array will create a simple alias to the resource class given in propertytype
.Key
: Name of a field in the resources metadata. Nested fields can be addressed by dot separation, e.g. field 'foo' in object 'sub' would be referred to with key 'sub.foo'. One refer to objects of arbitrary typeOperator
: Operator of the matchexpressions entry. 'Exists' checks whether given key exists in metadata. Propertyvalues
must then not be present.DoesNotExist
is the logical opposite.Contains
check if all entries invalues
are contained in the value in metadata at given key (which is itself must be a list or dict).NotContains
checks check if non entry invalues
is contained in the value in metadata at given key (which is itself a list or dict) (this is NOT the opposite ofContains
).In
check if value in metadata at given key is equal to one value in the given set of values.NotIn
is the opposite ofIn
. "enum": ["In", "NotIn", "Contains", "NotContains", "Exists", "DoesNotExist"]
-
Click on the
Save
button.