Hi Community,
Let’s say I have 15 nodes in a process model.
Scenario 1: The nodes are placed linearly and execute one after another.
Scenario 2: The nodes are split into 5 branches, with 3 nodes in each branch, using an AND/OR gate.
On testing above scenarios, when I config this inside startprocess and try to trigger it from web API, both scenarios are taking approx same time. Does appian on the backend still executes it linear irrespective of how we branch it in single process model canvas?
Discussion posts and replies are publicly visible
The process follows the logic, but the individual nodes are enqueued and executed by one of the multiple execution engines.
Is this just out of curiosity, or do you have the need to speed up things?
AFAIK, Appian does run one process instance on one execution engine - so even with AND parallel branches, all nodes are processed by that single engine, meaning:True thread-level parallelism doesn't happen within one instanceBranches are queued and picked up by the same engine serially.The parallel in AND gateway is logical, not true concurrent threading within a single instance.
True speedup only via background startprocess() - each gets its own engine instance.
I wanted to speed up things
Okay, Thanks .
Do you want to, or do you have to?
Did you try activity chaining?
Short answer: No, Appian does NOT force everything to run linearly.Appian does support parallel execution with gateways, but it doesn’t guarantee simultaneous execution.Appian process execution engine uses a limited thread pool, so parallel branches are scheduled based on available resources. In your case, as the nodes are lightweight, both linear and parallel flows take similar time. You’ll see real performance improvement only when each branch has heavy operations like integrations or long-running tasks.
Yes and also i branched it using couple of start process.