Skip to main content

Tab: Task Groups

Object: Task Configuration

You define task groups on the Task Groups tab. Task groups can be distributed over the individual processor cores in Multicore systems. The tasks of a task group are bound to the processor cores according to the strategy defined in the Core field. In the Priority column, the priority of the task is displayed as it is configured in the editor of the respective IEC task.

Add Group

The button adds a new task group named NewGroup_<no>.

Remove Group

Deletes the selected task group.

Group Name

The name can be changed by double-clicking in the field.

Core

  • Free floating: All IEC tasks in the task group are dynamically distributed to the individual processor cores by the operating system via load balancing. This means that the tasks usually very often switch the processor cores where they are executed. The user has no control over this.

    We recommend this setting for most applications because the load is automatically distributed by the operating system.

  • Sequentially pinned: All IEC tasks of the task group are permanently bound to different processor cores. If there are fewer processor cores than tasks, then the tasks are bound to the individual processor cores, starting with Core1 and continuing with Core2, Core3, etc. In the event of an overflow, the process is continued with Core0, Core, etc. The user has no control over this.

  • Fixed pinned: All IEC tasks of the task group are permanently bound to a processor core. By default, the runtime determines the processor core. Core1 is usually used.

    If there are several task groups with the Fixed pinned setting, then each task group is bound to a different processor core. This usually starts with Core1.

  • <fixed core number>all IEC tasks of the task group are permanently bound to a defined processor core. If the processor core does not exist on the controller, then an error is generated during the download.

Important

The Sequentially pinned, Fixed pinned, and <fixed core number> settings can be helpful to obtain more deterministic jitter times. This is because these settings are not influenced by the dynamic distribution of tasks to the individual cores at runtime.

However, this prevents the operating system from distributing the load across the individual processor cores.

Therefore, we recommend these settings only after testing them first. This test should demonstrate that these settings allow for a significantly improved real-time behavior.