Purchasing the correct hardware: dual-core intel? Big cache?

Chuck Swiger cswiger at mac.com
Tue Apr 25 13:48:21 UTC 2006

Bill Moran wrote:
[ ... ]
>> If you use well optimized applications, you see the larger performance 
>> gain.  Poor optimization causes a CPU to chug along, flushing the CPU cache 
>> often, and slowing things down considerably.
> I know.  That's why I'm so desperately trying to find a way to determine
> how often the cache is being invalidated - so I can determine whether
> larger cache sizes (such as 8M) are worthwhile.

Guys, you're confusing two things:
"flushing the pipeline" vs. "L2 cache hit ratio".

The former happens when branch prediction/speculative execution goes awry and 
requires the CPU to clear the pipeline of partially-executed instructions and 
backtrack to follow the other path.  It is related to optimization quality of 
compilers, but is not related at all to how big your L2 cache is.

The size of your L2 cache affects how much data is more local to the CPU than 
main memory, and increasing it will improve the L2 cache hit ratio, or, 
equivalently, reduce L2 cache misses.  This is affected by some specific 
compiler optimizations (cf "loop unrolling"), but tends to reflect the specifics 
of the workload and how much multitasking of different programs you do more than 
the compiler.


More information about the freebsd-questions mailing list