|Cost of LRU
Thinking about the conference and V3 and a customer's comment that InterBase isn't as fast as it might be on a multi-processors and doesn't seem to consume much CPU, I remembered one of the things that came up in the face-off between Falcon and InnoDB. There's nothing like a hot performance race to uncover problems lurking in old code.
As Falcon increased the number of pages it cached, the cost of maintaining an LRU queue grew to about 10% of the CPU. Jim backed off to a much less precise algorithm for determining which pages to drop from cache. We found that the extra I/O cost was minimal. I won't try to explain what he did (he probably will), but my recollection was that Falcon was spending a lot of time reordering the top 200 pages - which were never going to be dropped.