Skip to content

4 min read

Stage 08 · Automation: Amdahl's Law for Your Operations

The ceiling on every automation project, why Gustafson's rebuttal matters more than the law itself, and the 95% glue-code problem.

  • Automation
  • Operations
  • Systems

If a process is 60% automatable, automating it perfectly makes it 2.5× faster and not one bit more. That ceiling exists before you choose a tool, and most automation disappointment is a failure to compute it first.

Ariadne's eighth stage is "stop doing it by hand." This post is about how to know, before you build anything, how much that is worth.

The ceiling

Let ff be the fraction of a process that can be automated and SS the speedup applied to that fraction. Total speedup is

Speedup  =  1(1f)+f/S\text{Speedup} \;=\; \frac{1}{(1-f) + f/S}

As SS \to \infty, this converges to

Speedupmax  =  11f\text{Speedup}_{\max} \;=\; \frac{1}{1-f}

This is Amdahl's law, in the form given by Hill and Marty Hill & Marty 2008. Some values worth memorising:

Automatable fraction ffMaximum speedup
0.502.0×
0.602.5×
0.805.0×
0.9010.0×
0.9520.0×
Figure 1Amdahl's ceiling. Below about f = 0.8 the returns are modest no matter how perfect the automation; the curve only becomes dramatic in the last stretch.Diagram by the author; computed from 1/(1−f).

Gustafson's rebuttal, which is the useful half

Amdahl's law assumes a fixed problem. Gustafson objected that this is not how systems are actually used Gustafson 1988: "One does not take a fixed-size problem and run it on various numbers of processors except when doing academic research; in practice, the problem size scales."

Under scaled speedup, with ss' the serial fraction measured on the scaled system:

Scaled speedup  =  N+(1N)s\text{Scaled speedup} \;=\; N + (1-N)\,s'

Linear rather than asymptotic. Gustafson's team measured speedups of 1021, 1020 and 1016 on a 1024-processor machine — figures Amdahl's law would forbid for a fixed problem.

So the right question at the start of an automation project is not "how much time will this save on today's volume." It is: what becomes possible at this cost per unit that was not possible before?

The 95% you did not budget for

There is a second ceiling, and it is about implementation rather than arithmetic.

Sculley and colleagues, writing from Google at NeurIPS, observed that "a mature system might end up being (at most) 5% machine learning code and (at least) 95% glue code" Sculley et al. 2015. They are describing ML systems, and the figure is an engineering judgement rather than a measurement — I flag that because it is quoted as a statistic constantly.

The pattern generalises exactly to business automation. The rule that decides which lead goes to which person is twenty lines. The glue — authenticating to four systems, reconciling contact records, handling the customer who used a different email, retrying the API that fails at 3am, alerting a human when it cannot proceed — is the actual project.

2.5×

Maximum speedup when 60% of a process is automatable

1/(1−f)

~95%

Share of a mature system that is glue rather than core logic

Sculley et al., NeurIPS 2015 — engineering estimate

40%

Housekeeping share of executed instructions in Amdahl's original argument

Amdahl 1967

How I scope an automation

Four steps, in order, before writing code.

1. Time the process honestly. Not the happy path. Include the exceptions, because exceptions are where 1f1-f lives.

2. Split it into ff and 1f1-f. Deterministic, rule-expressible steps are automatable. Steps requiring judgement about an ambiguous human situation are not — at least not without a human confirming, which keeps them in 1f1-f for planning purposes.

3. Compute the ceiling, then ask the Gustafson question. If 1/(1f)1/(1-f) is under 2×, the fixed-volume case is weak. Ask whether removing the constraint changes what you would attempt. Frequently the answer is yes, and that is the real justification.

4. Budget for the glue. If your estimate is the rule logic, multiply it. This is not padding; it is the observed shape of these systems.

The four principles on Ariadne's site include "keep humans in control" alongside "leave the keys." The next post is about why that first one is not a values statement but a hard-won engineering result — automating the easy parts reliably makes the remaining human job harder.

References

  1. Amdahl, G. M. (1967). Validity of the single processor approach to achieving large scale computing capabilities. AFIPS '67 (Spring): Proceedings of the Spring Joint Computer Conference. https://doi.org/10.1145/1465482.1465560Contains no equations and one figure; the algebraic form came later.
  2. Hill, M. D., & Marty, M. R. (2008). Amdahl's law in the multicore era. Computer, 41(7), 33–38. https://doi.org/10.1109/MC.2008.209The authoritative modern statement of the formula.
  3. Gustafson, J. L. (1988). Reevaluating Amdahl's law. Communications of the ACM, 31(5), 532–533. https://doi.org/10.1145/42411.42415
  4. Sculley, D., Holt, G., Golovin, D., Davydov, E., Phillips, T., Ebner, D., Chaudhary, V., Young, M., Crespo, J., & Dennison, D. (2015). Hidden technical debt in machine learning systems. Advances in Neural Information Processing Systems 28 (NeurIPS 2015), 2503–2511. https://papers.nips.cc/paper_files/paper/2015/hash/86df7dcfd896fcaf2674f757a2463eba-Abstract.htmlThe 5%/95% figure is a qualitative engineering judgement, not a measurement.

Next: what happens to the humans left supervising the part that could not be automated.

Sourena Khanzadeh

Founder & Growth Engineer, Ariadne Growth Systems

Toronto, Canada

Ariadne Growth SystemsGrowth System Auditsupport@ariadne.fyi