Handle multiple engines
- Last UpdatedMay 18, 2026
- 1 minute read
You can improve system performance by distributing automation object instances across multiple engines. The operating system distributes the engines across available processors, where each engine runs in its own thread.
An Application Server WinPlatform object can host a maximum of 20 engines. The platform itself counts as one engine, leaving 19 available slots. However, it is not recommended to use more than 16 engines on a single platform. Using more than 16 engines on a platform may adversely impact system performance.
If you need more engines than can be accommodated by a single platform, create additional platform objects and assign engines as needed. Redundant platforms should be on separate nodes to enhance resiliency.
To determine whether to place multiple engines on a platform, analyze the Scheduler.ExecutionTimeAvg in the Object Viewer and strive to not to exceed more than 30% - 40% of the scan cycle execute time. Also, if the speed you require cannot be accommodated with one engine, you may need to split engines.
You may need multiple engines if:
-
There are differing scan rates or scan overruns.
-
There is high execution time.
-
You need to bring data in faster.
When you have sets of objects that do not require fast execution, you can group them on one engine. In a system in which you can group application objects based on scan rates, use a platform for each object group.
Important! Be sure to monitor CPU usage when adding engines. Also, remember that with multiple engines you are moving Areas. If you have only one area, you must create sub-areas.