Search squid archive

Re: Squid Memory and Page Faults

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 25, 2013 at 06:58:56AM +1200, Amos Jeffries wrote:
> On 25/07/2013 1:05 a.m., Golden Shadow wrote:
> >Hi there!
> >
> >My squid is installed on a server with 192 GB of RAM. I have the following 
> >directives in squid.conf:
> >
> >cache_mem 143360 MB
> >maximum_object_size_in_memory 300 KB
> >memory_replacement_policy heap GDSF
> >
> >memory_pools on
> >memory_pools_limit 1024 MB
> >
> >ipcache_size 2048
> >ipcache_low 90
> >ipcache_high 95
> >
> >fqdncache_size 2048
> >
> >
> >
> >top reports that my squid process size is 20GB, which is far less than my 
> >RAM size, but nevertheless I still find some page faults (about 70 page 
> >faults over 2 hours). I'm wondering how could those page faults are 
> >occurring while squid process size is far less than my RAM size. How can I 
> >eliminate those time consuming page faults?
> 
> Two things here.
> 
> Why is the process size only 20GB? you have a 143GB memory cache as part 
> of that RAM consumption by Squid. Perhapse your traffics real caching 
> requirement is far smaller than you are allowing storage for.
> 
> 
> What exactly is the page faulting comign from though ...  Squid or the OS?
> If it is Squid, why would the OS have swapped that piece of memory out 
> to VM in the first place? perhapse something else is needing a chunk of 
> memory larger than Squid leaves available?

With plenty of memory and a very large process image, my guess
is that the page fault is a TLB miss and not a swapin.
TLB miss cannot be avoided if a process is larger than the TLB can 
address.

Marcus

> 
> >My second question, am I using correct values for the memory-related 
> >directives mentioned above? If no, I would really appreciate if you could 
> >suggest the correct values.
> 
> Any values you want are "correct", so long as they fit within the 
> machines limits and do not lead to the system swapping.
> 
> 
> >My last question is about read_ahead_gap, whose default value is only 16 
> >KB. Would increasing this value to let's say 32 KB or 64 KB increase the 
> >performance since I have high RAM on the server?
> 
> Perhapse. That is a buffer size more related to your network speed. Each 
> concurrent connection consumes up to that much RAM for buffers. If you 
> have clients that can drain 32KB or 64KB fast enough not to cause waves 
> or bursts in traffic it can be worthwhile raising it a bit. If you have 
> slow clients the reverse can be true.
> 
> Amos




[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux