trafficserver-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Peach <jpe...@apache.org>
Subject Re: Tuning ATS for performance testing.
Date Wed, 23 Oct 2013 03:49:35 GMT
On Oct 22, 2013, at 1:45 PM, Adam W. Dace <colonelforbin74@gmail.com> wrote:

> Just thought I'd jump in here and report that after seeing his email, just for fun, I
tried increasing proxy.config.system.mmap_max
> from 2MB(default) to 8MB...then 16MB(my disk can read/write about 50MB/sec so this seems
reasonable).

That's really interesting. You could also test using tcmalloc, which has a reputation for
higher performance than glibc's malloc.

> 
> All of a sudden my Bing Image Searches aren't running into a write lock contention issue
anymore.
> I just may end up keeping this setting.  :)
> 
> 
> 
> On Tue, Oct 22, 2013 at 11:36 AM, James Peach <jpeach@apache.org> wrote:
> 
> On Oct 22, 2013, at 6:17 AM, Pavel Kazlenka <pavel.kazlenka@measurement-factory.com>
wrote:
> 
> > Thank you all for your replies. I have new questions here.
> >
> > I'm trying to estimate performance of single ATS 'network' (main) thread (hope I'm
using correct term). My thread-related configuration:
> > ONFIG proxy.config.exec_thread.autoconfig INT 0
> > CONFIG proxy.config.exec_thread.autoconfig.scale FLOAT 1.000000
> > CONFIG proxy.config.exec_thread.limit INT 1
> > CONFIG proxy.config.accept_threads INT 1
> > CONFIG proxy.config.cache.threads_per_disk INT 0
> > CONFIG proxy.config.ssl.number.threads INT 0
> > CONFIG proxy.config.task_threads INT 1
> > #Caching is off:
> > CONFIG proxy.config.http.cache.http INT 0
> >
> > I've found that memory-related options have a great impact on performance:
> >
> > CONFIG proxy.config.thread.default.stacksize INT 536870912
> 
> 512MB stack size for thread? Wow, that seems like an awful lot.
> 
> > CONFIG proxy.config.allocator.thread_freelist_size INT 524288
> > CONFIG proxy.config.system.mmap_max INT 5368709120
> 
> This setting ends up calling mallopt(M_MMAP_MAX), see <http://man7.org/linux/man-pages/man3/mallopt.3.html>.
From the description in the man page, I'd be surprised if setting this was useful in most
cases.
> 
> >
> > My problem is that default values for the variables given above are extremely conservative.
On the other hand, it's hard to pick up the good values for such a great range. Especially
while these options are not really good documented.
> > So my questions are:
> > 1) What should be good values for machine with 6GB RAM for the three variables above
(assuming that the only purpose of machine is running single thread of ATS to forward traffic
with high rate and minimal delay)?
> > 2) Is there any guide/detailed documentation on these options?
> > 3) May be there's some kind of formulas based on common sense that could help to
choose variables values based on proxy load (requests per second)?
> 
> proxy.config.allocator.thread_freelist_size seems like a reasonable setting to tune.
This is going to control how much memory will be permanently allocated to per-thread magazines.
It's a tuning balance between how much memory you need to allocate to servicing transactions
and how much memory should be used for RAM cache and other processes that are running on the
box.
> 
> FWIW I run my systems with proxy.config.allocator.thread_freelist_size=16K, though my
workload and hardware configuration is pretty different from yours.
> 
> > Device under test is Ubuntu 12.04 LTS, 64 bit, 6GB RAM, expected load is up to 15k
requests per second.
> >
> > TIA,
> > Pavel
> >
> > On 10/17/2013 10:07 PM, Igor Galić wrote:
> >>
> >> ----- Original Message -----
> >>> Thank you Igor.
> >>>
> >>> I've rebuilt ATS with hwloc and things became a bit better. Now I see
> >>> that load is being balanced fairly between configured number of threads
> >> Thank you very much for this feedback.
> >> I knew that this code paths have an impact (I've hacked bits of it too)
> >> but since I always compile --with-hwloc, I've never saw the difference.
> >>
> >>
> >> ++i
> >>
> >> Igor Galić
> >>
> >> Tel: +43 (0) 664 886 22 883
> >> Mail: i.galic@brainsware.org
> >> URL: http://brainsware.org/
> >> GPG: 6880 4155 74BD FD7C B515  2EA5 4B1D 9E08 A097 C9AE
> >>
> >
> 
> 
> 
> 
> -- 
> ____________________________________________________________
> Adam W. Dace <colonelforbin74@gmail.com>
> 
> Phone: (815) 355-5848
> Instant Messenger: AIM & Yahoo! IM - colonelforbin74 | ICQ - #39374451
> Microsoft Messenger - colonelforbin74@live.com
> 
> Google Profile: https://plus.google.com/u/0/109309036874332290399/about


Mime
View raw message