Casper H.S. Dik said:
Indeed; the FSB is just about fast enough for one core; it becomes
a bottleneck at two cores.
It's a bit more complicated I think:
First the memory controller no matter if integrated or not is a
bottleneck for any CPU given a sufficient fast workload. That's
simply because the DIMMs cannot keep up with the CPU.
I would say in practice for a normal desktop machine or a laptop
the limit is how much bandwidth two DIMMs can deliver.
For bandwidth a sufficiently fast FSB could supply enough bandwidth
to easily keep up with these two DIMMs.
Where it mainly loses against the integrated IMC+separate link is when there
is a lot of additional IO traffic too (but that tends to be small
compared to memory traffic except perhaps for 3d).
And in latency it is slower of course of course. That is the big win
of the integrated memory controller. Even that can vary though -
e.g. if the FSB has enough bandwidth and the chipset a good memory
controller it could look reasonable again under high load (compared
to idle latency)
For servers with multiple sockets, better IO and typically more DIMMs
that can deliver data in parallel it's a different chapter of course.
First sharing the FSB between multiple sockets is of course a
bottleneck, especially when the FSB isn't fast enough for even a
single dual core. And it also needs to carry additional processor
synchronization traffic. But then there is no rule that the FSB
has to be shared between multiple CPUs.
This only works for relatively small systems of course.
Given enough tweaks (higher frequency, split FSBs for multi socket
systems or even multiple cores on one socket) it might be some time
until the FSB setup runs really out of steam.
-Andi