Glossary · Automation fundamentals, platforms and components
Parallelism
Also known as: Parallel execution, Parallel processing
German: Parallelität
In automation and software engineering, parallelism is the simultaneous execution of several computations or control sequences, either on multiple processor cores or devices, or as parallel branches of one sequence. It differs from concurrency, where tasks only interleave on shared resources.
- Automation components
In one sentence
Parallelism means that several computations or control sequences actually run at the same time, on multiple cores, devices or parallel sequence branches.
Example
A packaging machine runs its film feed and its sealing jaws in two parallel SFC branches that join again before the cut.
How it applies
- Engineering: Parallel control paths appear as simultaneous branches in an SFC (sequential function chart), as several Task objects on a multicore controller, or as independent drives working at the same time. Shared data between them needs Synchronization.
- Commissioning: Race conditions often show up only under real timing. Test parallel branches with worst-case load and document which branch waits for which.
- Documentation: Describe parallel sequences so readers see what happens at the same time: a swimlane or timing diagram beats prose. State which condition joins the branches again.
Parallelism vs. concurrency
Concurrency means several tasks are in progress and share resources, possibly interleaved on one processor core. Parallelism means they really execute at the same instant. A single-core PLC running two tasks is concurrent but not parallel; a multicore controller that assigns each task to its own core runs them in parallel. Both need rules for shared variables.