Hi Muthukumar,
On Wed, Dec 08, 2004 at 04:49:40PM +0530, Muthukumar wrote: > > Hello Development Team, (I'm not a core squid developer). > > We had a benchmark and got results for the hardware setup, > > model name : Pentium III (Coppermine) > cpu MHz : 927.753 > RAM size : 512 > > I like to have your review on this. can we get more req / sec > satisfaction on this setup? > > ------- > > squid 3.0 without epoll(): > Squid Cache: Version 3.0-PRE3 > configure options: '--prefix=/usr/local/squid3pre' '--with-aufs-threads=32' > '--with-descriptors=32768' '--with-pthreads' > '--enable-storeio=null,ufs,aufs' '--enable-debug-cbdata' > > cache_mem 200MB > cache_dir null /dev/null > > top output: > > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > 6428 squid 25 0 336m 322m 3276 R 99.9 63.8 > 3:05.54 squid > > > Results: > req.rate: 167.50 > rep.rate: 167.17 > Looks like you are running into a CPU bottleneck. Perhaps you may want to add --enable-cpu-profiling to configure, and check cpu usage data with cache manager, or compile and link with -pg and check results with gprof. Also, verify whether CPU usage is in kernel-mode or user-mode with vmstat during the test (sar gives this information as well). > ---- > > squid 3.0 with epoll(): > Squid Cache: Version 3.0-PRE3 > configure options: '--prefix=/home/muthu/squidepoll' '--enable-epoll' > '--with-aufs-threads=32' '--with-descriptors=32768' > '--with-pthreads' '--enable-storeio=null,ufs,aufs' '--disable-poll' > '--disable-select' '--disable-kqueue' '--disable-optimizations' > '--enable-debug-cbdata' > > cache_mem 200MB > cache_dir null /dev/null > > top output: > > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > 8358 squid 16 0 425m 407m 3428 R 81.2 90.6 1:46.13 > squid > > Results: > req.rate: 182.35 > rep.rate: 180.20 > > > I want to have your analysis on this. I am getting errors, Looks like you are running with (the same?) CPU bottleneck. epoll's advantage is that CPU usage does not grow with the number of idle TCP connections. If the number of concurrent connections is large, and there are no idle connections, epoll should only give a small increase in throughput (no cpu is used for traversing the list of fds). Is, by any chance, throughput (in bps) slightly larger with epoll? > 008.75| Connection.cc:485: error: 1/1 (s110) Connection timed out > 008.75| error: raw write after connect failed > after these req / sec configuration setting. Try enabling SYN cookies, and running squid with ulimit -HSn 131072. > > Regards, > Muthukumar. > Hope this helps, Gonzalo
