- Home
- Blog
- Glossary (EDGEBIC)
- What Is Dependent Parallel Processing?
Dependent parallel processing runs one or more secondary machines in exact lockstep with a primary machine on the same operation: the primary earns the time slot, and each dependent machine mirrors its start and end times verbatim. The machines are treated as a single physical operation that happens to occupy several work centers at once, so their timing is copied rather than independently planned. The classic case is a multi-spindle head where every drill must turn at the same moment on the same part.
EDGEBIC by User Solutions models this as mirroring: one primary schedule and one or more copies. This article defines the term and contrasts it with the alternative. The full validation and rollback mechanics are in how EDGEBIC handles parallel work centers.
How It Works
You pick one machine as the primary and list the synchronized machines as dependent alternatives on the same routing step. When the engine schedules that step, only the primary goes through the normal capacity search. Once the primary has its slot, each dependent machine receives a mirror: a schedule row with identical start dates, end dates, and instance timing.
The mirror's hours are scaled by a Factor. A Factor of 1.0 means the mirror logs the same hours as the primary. A lower Factor means it logs proportionally fewer, for a machine doing lighter work in the same window. The Factor touches only the hours, never the timestamps, because the whole point is that the machines run at the same moment.
Dependent mirrors are not capacity-checked. The engine writes them from the primary regardless of the mirror machine's own load. That is intentional: a synchronized head is one operation, and the mirror machines are assumed dedicated to it. Machines that also take unrelated work should be modeled as independent parallel instead, so their capacity is genuinely tracked.
A Concrete Example
Picture three synchronized drill heads on a single gantry drilling one large part. They are not three separate jobs. They are one operation that needs three tools turning together. In the plan, one drill is the primary. It goes through the capacity search and lands on, say, Monday 08:00 to 16:00 with two more hours Tuesday morning. The other two drills mirror it exactly: same eight hours Monday, same two hours Tuesday, each with a Factor of 1.0 so they log the same time. All three appear on the Gantt as a single synchronized block that starts and ends together. Touch one and you have broken the operation, which is why the plan treats them as inseparable.
When to Use It, and When Not To
Reserve dependent parallel for machines that physically run as one operation and are dedicated to it. A multi-spindle head, a set of synchronized robots on one car body, a paired press-and-die that must fire together: these are genuine mirroring cases. The machines have no independent existence in the plan, so copying one schedule to all of them is exactly right.
The wrong case is a machine that also takes unrelated work. Because a mirror is written from the primary without checking the mirror machine's own capacity, mirroring onto a machine that runs other jobs can book it in two places at once. The plan then shows a machine committed to a synchronized operation and to a separate job in the same window, which the floor cannot honor. If a secondary machine ever runs on its own, it is not a dependent mirror, it is an independent resource, and modeling it as independent parallel gives it the capacity check it needs. The test is simple: does this machine ever run without the primary? If yes, it is not a mirror.
How EDGEBIC Uses It
Dependent parallel shows up wherever a routing step lists synchronized secondary machines. The engine writes the primary through the normal multi-shift allocator, then mirrors each dependent machine and labels the mirror rows as copied from the parent. On the shop floor board, a supervisor sees the same job block on several machines at once and knows they move as a unit.
Because the mirrors are regenerated from the primary on every run, they stay consistent through rescheduling. When the primary shifts, its mirrors shift with it, and completed work is never moved. The manufacturing glossary covers the related terms. If your machines instead split work to finish faster, read what is independent parallel processing, and for the full engine behavior see the parallel work centers guide.
Expert Q&A: Deep Dive
Q: We have a three-spindle drilling head where all three drills must run together on the same part. How do we model that?
A: That is the textbook case for dependent parallel. Make one drill the primary and list the other two as dependent alternatives. The primary earns the slot through the normal capacity search, then each of the other two mirrors its schedule exactly: same start, same end, same instance timing. If the primary runs eight hours Monday and two hours Tuesday, both mirrors run eight Monday and two Tuesday. You set a Factor of 1.0 on each so they log the same hours, or a lower Factor if a spindle does lighter work. The three appear on the Gantt as one synchronized block, and you should never drag one independently, because it represents one physical operation.
Q: Why does my dependent mirror show up as booked on a machine that is also running an unrelated job at the same time?
A: Because dependent mirrors are written from the primary without checking the mirror machine's own capacity, it is possible to mirror onto a machine that is genuinely busy with something else. That is a known limitation of the mirroring model: it assumes the mirror machine is dedicated to the synchronized operation. If your secondary machine also takes independent work, it is not really a dependent mirror, it is an independent resource, and you should model it as independent parallel so its capacity is checked and consumed properly. Reserve dependent parallel for machines that only ever run in lockstep with their primary.
Frequently Asked Questions
Ready to Transform Your Production Scheduling?
User Solutions has been helping manufacturers optimize their production schedules for over 35 years. One-time license, 5-day implementation.

User Solutions Team
Manufacturing Software Experts
User Solutions has been developing production planning and scheduling software for manufacturers since 1991. Our team combines 35+ years of manufacturing software expertise with deep industry knowledge to help factories optimize their operations.
Share this article
Related Articles
The EDGEBIC Scheduling Glossary Index
A themed index to the EDGEBIC glossary: scheduling engine, capacity and calendars, materials and planning, shop floor, reporting, quoting, and data import terms, defined in plain language.
What Is the Critical Chain in Manufacturing Scheduling?
The critical chain is the longest dependent path through a plan once shared machine contention is counted, not just step precedence. Here is how it differs from the critical path.
What Does Finite Capacity Mean in EDGEBIC?
Finite capacity means the scheduler refuses to book more hours on a machine than that machine actually has. See exactly how EDGEBIC enforces it, day by day and shift by shift.
