I was wondering, why you'll want to have 100 threads, because the number 
seems a little high to me. So I've just conducted some test on two of our 
development system.

A test. similar to your simple adp page with maxthreads of 5 yields 
between 1500 and 2500 requests per seconds, including session handling 
in the preauth filter. With 24 maxthreads I get between 6800 and 7500 
reqs/sec.

For a real world not cached CMS page on a 6 core hyperthreaded CPU we 
still get more than 500 pages/sec with 5 maxthreads and 770-780  with 12 
threads, 820 - 830 up to 950 with 24 maxthreads. From there it doesn't 
change much, until performance degrades slightly again at around 100 
maxthreads (780 reqs/sec).

I used ab with -n 20000 -c 50|200|500|1000

My conclusion: Having a higher number of maxthreads than the number of 
cores is helping performance, more than twice the amount isn't helping 
anymore. 

It might be different, when you've got some long running threads, where 
you have to pull information from other servers and the threads are idling.

This was all done with tcmalloc, If I'll find the time, I'll rerun the tests 
with 
jemalloc as well.

wolfgang


Am Samstag, 4. Januar 2014, 20:35:05 schrieb John Buckman:
> >> After rebuilding tcl and naviserver (current) from source, with
> >> -ltcmalloc, my naviserver is stable.> 
> > great. the tip version of naviserver have already some modifications
> > to help against concurrency bugs in tcl (e.g. reducing the frequency 
of
> > interp create operations, serializing these etc.).
> 
> With Gustaf's patch in place, I was able to test tcmalloc vs jemalloc vs
> zippy in naviserver.
> 
> Both tclmalloc and jemalloc gave me a 20% speed up on a simple [clock
> seconds] adp page.  Both gave me about a 40% speedup on a much 
more
> complicated, unoptimized Tcl index.adp page.
> 
> Once I received an openssl() assertion failure on startup with jemalloc 
and
> "minthreads 100" but was not able to recreate it.
> 
> tcmalloc under 20 threads worked well, but performance was *terrible* 
at
> "minthreads 100", (about a 90% slowdown, even with apachebench -c 
10). 
> Neither zippy nor jemalloc had this problem.  There's something about
> having many naivserver threads launched that makes tcmalloc not work 
well.
> 
> Conclusion:
> 
> For now, I'm using jemalloc, though the openssl assertion failure I had
> makes me nervous.
> 
> tcmalloc's terrible performance with 100 threads makes me not want to 
use
> it.
> 
> At the same time, I don't want to stick with zippy, as I've experienced the
> "bloat" problem that Gustaf talks about, solving it at BookMooch.com 
with
> 64GB of RAM (!) but that's not a very good solution, so it's worth my 
while
> to try other mallocs.
> 
> -john
> 
> 
> 
> ----------------------------------------------------------------------------
> -- Rapidly troubleshoot problems before they affect your business. Most 
IT
> organizations don't have a clear picture of how application performance
> affects their revenue. With AppDynamics, you get 100% visibility into your
> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of 
AppDynamics
> Pro!
> 
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.
clktrk
> _______________________________________________
> naviserver-devel mailing list
> naviserver-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/naviserver-devel

-- 
digital concepts OG
Software & Design
Landstrasse 68 / 5. Stock
A - 4020 Linz
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel

Reply via email to