The CPU multiplier is nothing more than that idea taken to extremes,
but cleverly retro-forgotten through the use of marketing prowess. All
the multiplier does is tell the chip "Run at this many times the speed
of the external bus." So if the external bus is running at 133Mhz, the
CPU multiplier of 12.5x is just telling it to run at 1.6625 GHz. All
it is is a frequency setting.
Here's how it works.
The CPU has to talk to the outside world. That's what the frontside
bus is for. FSB speed is measured two ways: actual MHz and effective
For the current P4 ("800MHz FSB"), the actual clock rate is 200MHz.
The "800MHz" is the "effective" clock, since the P4 can ship out 4
data items per clock cycle (sometimes referred to as "quad data
rate"). Older P4's run at 133MHz ("533 MHz FSB") and 100MHz ("400MHz
The Athlon XP today ships in two variants: one with a 166MHz frontside
bus clock ("333MHz FSB") and 200MHz clock ("400MHz FSB"). The
difference here is that the Athlon XP can only ship out two data items
per clock cycle (also called "double data rate").
The dirty little secret here is that the CPU multiplier is based on
the actual clock rate, not the "effective" rate. That means that a
3.2GHz Pentium 4 has a multiplier of 16 -- 16x200 = 3200MHz.
An Athlon XP 3200+ has a real clock rate of 2.2GHz (2200MHz). It's
frontside bus actually clocks at 200MHz, so the multiplier is 11
What this means in real terms is that memory is much slower than the
CPU. Techniques such as the P4's efficient cache line architecture and
the Athlon 64's integrated memory controller are all there to keep the
CPU from waiting for memory accesses. Another way to look at this is
that memory is running 16 times slower than the CPU (in the case of
the P4 3.2GHz) or 11 times slower (in the case of the Athlon XP
It's not as bad as it sounds (heck, the 3.06GHz P4, with its 133MHz
FSB clock, has a 23x multiplier!). All the cache in current CPUs, and
the deeper pipelines, help prevent the CPU from stalling while waiting
for memory. Also, Hyper-Threading is a way to keep things rolling
along when one thread stalls. But there are times when that mega-fast
CPU is waiting for the dismally slow memory to deliver data.