You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@trafficserver.apache.org by "Eric Friedrich -X (efriedri - TRITON UK BIDCO LIMITED c/o Alter Domus (UK) Limited -OBO at Cisco)" <ef...@cisco.com> on 2019/05/13 17:26:50 UTC

Ram Cache Sizing

Hi All-
  Looking for guidance on the best way to set the ram_cache.size parameter as TS seems to take it as only general suggestion. 

 Should we assume a fixed ratio (like setting the size to 1/3rd the desired size)? 

Are there any options for getting allocated, yet not in-use buffers either free()’d or coalesced/split in place of new allocations?

Thanks,
Eric

 

Re: Ram Cache Sizing

Posted by Leif Hedstrom <zw...@apache.org>.

> On May 13, 2019, at 11:26 AM, Eric Friedrich -X (efriedri - TRITON UK BIDCO LIMITED c/o Alter Domus (UK) Limited -OBO at Cisco) <ef...@cisco.com> wrote:
> 
> Hi All-
>  Looking for guidance on the best way to set the ram_cache.size parameter as TS seems to take it as only general suggestion. 
> 
> Should we assume a fixed ratio (like setting the size to 1/3rd the desired size)? 

That seems pessimistic. It really depends on your use cases, in our setup, the RAM cache stays pretty much static once it reaches “peak” (after 12h or so from restart).

> 
> Are there any options for getting allocated, yet not in-use buffers either free()’d or coalesced/split in place of new allocations?
> 

If it’s a serious problem, like your usage pattern makes the RAM cache swing dramatically on iobuffer sizes, you can turn off the ATS freelist. I would definitely compile and/or run  with jemalloc if you do this, and keep a close eye on it. Under pressure, jemalloc likely perforce worse than the freelist (still TBD), and there’s been at least some cases where it failed miserably (mine :), but that still also needs more analysis / work.

— Leif