Tsuyoshi SASAMOTO wrote: >>some comments.. >>the stats seems high.. make sure you have the: >> Options FollowSymLinks >> AllowOverrides none >>specified >>also try 'AcceptMutex pthread' this worked better for my tests. >>there may be some other things, but I would need to see your config file. > > > Thanks... The previous config was: > Options All MultiViews > AllowOverride All > I was interested in the "relative" comparison between T1 and T2 threads, > so httpd.conf itself was not tuned well...
the problem is that with all the other things going on you don't get a fair comparision of the threading systems, as you were spending all your time in the file system. > > Under config you suggested above and so on, the result is as below. It looks like the changes doubled your performance.. not bad for 2 lines :-) Also.. if you want to get a bit faster try preloading the /usr/lib/libmtmalloc.so library. also.. have you compared perchild to worker ? (yes I know perchild isn't finished..I'm just curious) > > > Tsuyoshi SASAMOTO > [EMAIL PROTECTED] > ---------------------------------------------------------------------- > > Result of > ab -c128 -n8192 127.0.0.1:3080/ > ----[T1 thread lib]--------------------------------------------------- > This is ApacheBench, Version 2.0.37-dev <$Revision: 1.105 $> apache-2.0 > : > : > Server Software: Apache/2.0.39 > Server Hostname: 127.0.0.1 > Server Port: 3080 > > Document Path: / > Document Length: 1630 bytes > > Concurrency Level: 128 > Time taken for tests: 14.586689 seconds > Complete requests: 8192 > Failed requests: 0 > Write errors: 0 > Total transferred: 15810560 bytes > HTML transferred: 13352960 bytes > Requests per second: 561.61 [#/sec] (mean) > Time per request: 227.917 [ms] (mean) > Time per request: 1.781 [ms] (mean, across all concurrent requests) > Transfer rate: 1058.50 [Kbytes/sec] received > > Connection Times (ms) > min mean[+/-sd] median max > Connect: 0 0 1.3 0 84 > Processing: 29 224 24.9 222 442 > Waiting: 3 112 65.8 112 360 > Total: 29 224 25.0 222 444 > > Percentage of the requests served within a certain time (ms) > 50% 222 > 66% 223 > 75% 223 > 80% 223 > 90% 225 > 95% 240 > 98% 306 > 99% 310 > 100% 444 (longest request) > ----[T2 thread lib]--------------------------------------------------- > This is ApacheBench, Version 2.0.37-dev <$Revision: 1.105 $> apache-2.0 > : > : > Server Software: Apache/2.0.39 > Server Hostname: 127.0.0.1 > Server Port: 3080 > > Document Path: / > Document Length: 1630 bytes > > Concurrency Level: 128 > Time taken for tests: 15.981754 seconds > Complete requests: 8192 > Failed requests: 0 > Write errors: 0 > Total transferred: 15810560 bytes > HTML transferred: 13352960 bytes > Requests per second: 512.58 [#/sec] (mean) > Time per request: 249.715 [ms] (mean) > Time per request: 1.951 [ms] (mean, across all concurrent requests) > Transfer rate: 966.10 [Kbytes/sec] received > > Connection Times (ms) > min mean[+/-sd] median max > Connect: 0 0 0.7 0 58 > Processing: 56 245 29.3 266 398 > Waiting: 3 123 71.0 123 307 > Total: 56 246 29.3 266 398 > > Percentage of the requests served within a certain time (ms) > 50% 266 > 66% 267 > 75% 268 > 80% 268 > 90% 270 > 95% 271 > 98% 284 > 99% 285 > 100% 398 (longest request) > ---------------------------------------------------------------------- > > Result of > truss -c -p (pid of the working httpd process) & \ > ab -c128 -n768 127.0.0.1:3080/ >&/dev/null; \ > pkill -u $user -x truss > ----[T1 thread lib]--------------------------------------------------- > syscall seconds calls errors > read .20 1540 5 > write .12 768 > close .20 1534 > brk .31 774 > times .05 768 > sysi86 .02 40 > fcntl .34 1536 > sendfilev64 .28 768 > poll .15 1540 > sigaction .00 14 > mmap .02 58 > mprotect .07 184 > lwp_sema_wait .02 283 > lwp_sema_post .04 283 > gettimeofday .70 4889 > lwp_create .02 80 > lwp_continue .01 40 > lwp_self .04 141 > lwp_mutex_wakeup .06 205 > lwp_mutex_lock .15 971 > lwp_cond_wait .05 157 > lwp_cond_signal .04 157 > lwp_schedctl .00 40 > signotifywait .00 43 > lwp_sigredirect .00 43 > stat64 .25 1536 > fstat64 .27 1536 > open64 .30 1536 768 > accept .32 768 > shutdown .17 767 > getsockname .17 768 > getsockopt .20 1536 > setsockopt .11 768 > lwp_mutex_unlock .12 768 > ------- ------ ---- > sys totals: 4.80 26839 773 > usr time: .58 > elapsed: 8.54 > ----[T2 thread lib]--------------------------------------------------- > syscall seconds calls errors > read .45 1542 7 > write .31 768 > close .66 1534 > brk 1.12 1676 > times .25 768 > sysi86 .08 92 > fcntl .49 1536 > lwp_park .63 1298 > lwp_unpark .59 1298 > sendfilev64 .39 768 > poll .50 1542 > sigprocmask .07 221 > mmap .10 173 > munmap .08 146 > yield .00 123 > gettimeofday 1.99 5071 > lwp_create .15 468 > lwp_exit .10 220 > lwp_continue .07 234 > lwp_kill .09 242 210 > lwp_mutex_lock .30 768 > lwp_schedctl .08 234 > stat64 .61 1536 > fstat64 .53 1536 > open64 .65 1536 768 > accept .25 768 > shutdown .40 767 > getsockname .20 768 > getsockopt .64 1536 > setsockopt .26 768 > lwp_mutex_unlock .25 768 > ------- ------ ---- > sys totals: 12.29 30705 985 > usr time: .88 > elapsed: 19.24 > ---------------------------------------------------------------------- >