User Tools

Site Tools


Robust-first computing

Introduction: Serial determinism

The traditional approach to computing is called serial determinism: The machine operates sequentially, doing one thing at a time, step by step by step (serial) — and the output of each step is absolutely determined by the state of the machine when the step began (deterministic).

Machines using serial determinism are easy to reason about and they have been a remarkable, world-changing success in the marketplace, but they ultimately scale poorly and offer poor security.

An alternative: Living computation

There are other ways to compute, that offer different — and perhaps more attractive — tradeoffs, but which as yet have received scant research and development attention. While serial deterministic machines were growing by leaps and bounds, that was understandable, but now those traditional architectures are increasingly struggling to grow further.

Viewed as a kind of computer, note how different a living organism is compared to a serial deterministic machine. Deterministic machines are 100% completely repeatable – from the same inputs will come the exact same outputs — while living organisms rarely do anything the exact same way twice. Deterministic machines will crash, seize-up, or otherwise misbehave when virtually anything goes wrong inside them; living organisms, by contrast, can suffer grievous injury and yet survive, handle the immediate situation, and get away long enough to heal up and live on.

For more information

introduction/robust-first_computing.txt · Last modified: 2014/12/03 21:26 by ackley