Skip to content

Shared Memory Allocation

The Shared Memory Resource Plug-in lets Industrial Edge applications access a shared-memory file system inside the application container. When an application requests a shared-memory file system successfully, the Resource Manager creates the memory and makes it available to the application container. Applications can mount and use only the memory that the Resource Manager creates. Other host-side applications cannot access or write to this file system unless they mount it. Multiple applications can use the same shared-memory resource at the same time if they request the same resource. Use shared memory for scenarios such as high-speed inter-process communication or sharing large data volumes between processes.

To support these scenarios, install the packages in resource-enablement-shared-memory.tar.gz. Shared memory support consists of the shared memory resource plug-in ie-shared-memory-resource-plugin*.deb, which integrates with the Resource Manager and supports operator-side configuration.

Configuring shared memory allocation

Do not apply a device-builder-specific configuration for the shared memory plug-in. Keep only the default configuration under /usr/lib/ie-shared-memory-resource-plugin/. During operation, changes must be written only to /etc/ie-resource-plugins/ie-shared-memory-resource-plugin.yaml. The plug-in reads the static parameters from the device-builder configuration and the non-static parameters from the user configuration. Users can change only the non-static parameters. The plug-in merges both sets into the effective configuration. After a firmware update, the system keeps the user configuration and merges it with the updated device-builder configuration.

NOTICE

Make sure that /etc/ie-resource-plugins/ is empty before you ship the image.

The default configuration is:

shared_memories: []
shared_memory_limit_in_mb_static: 4096