"Which computer is faster?" sounds like a simple question. It is a trap. Faster at what, and faster for whom? A delivery van and a sports car are both "fast", but a courier moving ten thousand parcels a day does not want the sports car. Before you optimise anything — before you touch a pipeline, a cache, or a clock — you must decide which number you are trying to make bigger. Architecture is an engineering discipline, and engineering begins with a defined metric.
There are two headline metrics, and they are not the same thing:
The sports car wins on latency (one trip, done quickly); the van wins on throughput (parcels delivered per hour). A data-centre operator sells throughput; a gamer chasing frame-times buys latency. Same hardware, opposite priorities.
To make "faster" precise, architects define performance as the reciprocal of execution time for the task you care about:
Then "machine
Notice the flip: performance is a ratio of times the other way round. If
The words pile up fast, and vendors exploit the confusion. Here is the vocabulary, pinned down:
| Metric | Units | Means | You care when… |
|---|---|---|---|
| Latency / response time | seconds | time for one task, end to end | a single request must feel instant |
| Throughput / bandwidth | tasks/s, GB/s | work completed per unit time | you serve millions of requests |
| Wall-clock time (elapsed) | seconds | real time you actually waited | you measure the whole experience |
| CPU time | seconds | time the CPU spent on your program | you compare processors fairly |
The last two are subtly different and matter enormously. Wall-clock time is what a
stopwatch reads: it includes waiting on the disk, the network, and every other program the OS was running.
CPU time is only the seconds the processor actually spent executing your code (often split
into user and system CPU time). A job that "took 10 seconds" on the stopwatch but used
only
The cleanest way to feel the difference is pipelining — a laundromat, or a CPU. Suppose
one task passes through
Drag the depth slider below. The first task still takes the full latency
Machine
For throughput, invert:
Famously: "never underestimate the bandwidth of a station wagon full of tapes hurtling down the highway." It is a genuine engineering point, not just a joke. A car carrying a few hundred hard drives across a city moves petabytes — divide by the drive time and the throughput (bytes per second) can beat any internet link. But the latency is dreadful: the first byte does not arrive for hours. This is exactly why cloud providers really do ship crates of disks (Amazon's "Snowball") to move giant datasets: when you need throughput and can tolerate latency, physical shipping wins. Latency and throughput are genuinely independent axes.
Vendors love single-number badges — megahertz, MIPS (millions of instructions per second), FLOPS. They are
seductive and misleading. MIPS counts instructions, but instructions differ between ISAs and
programs, so a chip can post huge MIPS on trivial instructions while doing little real work — some
old-timers expanded MIPS as "Meaningless Indicator of Processor Speed". Clock rate (GHz) is only
one of the three factors in the
Every optimisation in this course improves some metric on some workload. Widening the
pipeline lifts throughput but may raise the latency of a branch. A bigger cache cuts average latency but
costs area and power. There is no scalar "speed"; there is only "faster at this task, measured this way".
So the professional habit is: state the workload, state the metric, then measure execution
time — and only then reach for the