What are these CPU cache settings? Snoop Filter, ACL prefetch, HW prefetch
        Posted  
        
            by 
                eater
            
        on Super User
        
        See other posts from Super User
        
            or by eater
        
        
        
        Published on 2010-12-30T15:04:12Z
        Indexed on 
            2010/12/30
            15:56 UTC
        
        
        Read the original article
        Hit count: 344
        
I was in my BIOS setup turning on VT-x support today and saw these other settings. A little googling indicates that they each seem to turn on some sort of optimization to do with the CPU's L2 cache. They were all turned off by default.
The processor in question is an Intel Xeon quad-core 3.4GHz (X5492). My OS is 
Linux 2.6.35.10-74.fc14.x86_64 #1 SMP Thu Dec 23 16:04:50 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux. I have 4GB of RAM if that matters.
Here's what the BIOS manufacturer has to say:
Snoop Filter
Enabling the snoop filter typically improves performance by reducing snoop traffic on the frontside bus in dual processor configurations.
Well I like the sound of improved performance. Why would the BIOS have this off by default? Or by dual processor do they not mean multi-core? Regardless, is there a downside if this is on?
ACL Prefetch
When enabled, the Adjacent Cache Line Prefetcher fetches both cache lines that comprise a cache line pair when it determines required data is not currently in its cache. When disabled, the processor will only fetch the cache line required by the processor.
HW Prefetch
Fetches an extra line of data into L2 from external memory.
Both of these sound like optimizations that have some drawbacks. What are the reasons to turn them on? What are the reasons to leave them off. Why is the default off?
© Super User or respective owner