Re: Remaining CPU bottlenecks in 2.0, revisited

2001-09-29 Thread Brian Pane
Justin Erenkrantz wrote: On Fri, Sep 28, 2001 at 04:57:05PM -0700, Brian Pane wrote: The notes following the profile offer my interpretation of the numbers. % of totalcumulative % rank function CPU timeof total CPU time

Re: remaining CPU bottlenecks in 2.0

2001-09-06 Thread Aaron Bannert
On Wed, Sep 05, 2001 at 08:40:24PM -0700, Justin Erenkrantz wrote: On Wed, Sep 05, 2001 at 08:34:30PM -0700, Ian Holsman wrote: I got 1 more question about the solaris implementation of the Threaded/Worker MPM. should we be called the setconcurrency flag on startup ? I know solaris

Re: remaining CPU bottlenecks in 2.0

2001-09-06 Thread William A. Rowe, Jr.
From: dean gaudet [EMAIL PROTECTED] Sent: Wednesday, September 05, 2001 9:17 PM On Tue, 4 Sep 2001, Brian Pane wrote: * memset() is called mostly from apr_pcalloc(), which in turn is used in too many places to yield any easy optimization opportunities. sometimes folks are lazy and

mod_include.c WAS: RE: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Sander Striker
* find_start_sequence() is the main scanning function within mod_include. There's some research in progress to try to speed this up significantly. Based on the patches you submitted (and my quasi-errant formatting patch), I had to read most of the code in mod_include, so I'm more

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Greg Stein
On Tue, Sep 04, 2001 at 11:56:48PM -0500, William A. Rowe, Jr. wrote: ... You were discussing the possibility of parsing for !--# as a skip by 5. Consider jumping to a 4 byte alignment, truncating to char and skip by dwords. E.g., you only have to test for three values, not four, and you

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Brian Pane
Greg Stein wrote: On Tue, Sep 04, 2001 at 11:56:48PM -0500, William A. Rowe, Jr. wrote: ... You were discussing the possibility of parsing for !--# as a skip by 5. Consider jumping to a 4 byte alignment, truncating to char and skip by dwords. E.g., you only have to test for three values, not

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Brian Pane
Justin Erenkrantz wrote: [...] * The discussion here covers only CPU utilization. There are other aspects of performance, like multiprocessor scalability, that are independent of this data. Once we get the syscalls optimized (I'm reminded of Dean's attack on our number of syscalls in 1.3

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Justin Erenkrantz
On Wed, Sep 05, 2001 at 08:19:50PM -0700, Brian Pane wrote: Ah, I guess that explains why only a small fraction of pthread_mutex_lock calls on Solaris seem to result in calls to lwp_mutex_lock: in the fast case where the lock is available, it just stays in user-mode code? Yes. -- justin

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Ian Holsman
I got 1 more question about the solaris implementation of the Threaded/Worker MPM. should we be called the setconcurrency flag on startup ? I know solaris figures it out along the way, but a bit of gentle prodding never hurt. ..Ian Brian Pane wrote: Justin Erenkrantz wrote: [...] * The

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Justin Erenkrantz
On Wed, Sep 05, 2001 at 08:34:30PM -0700, Ian Holsman wrote: I got 1 more question about the solaris implementation of the Threaded/Worker MPM. should we be called the setconcurrency flag on startup ? I know solaris figures it out along the way, but a bit of gentle prodding never hurt.

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread dean gaudet
On Tue, 4 Sep 2001, Brian Pane wrote: * Collectively, stat and open comprise 5% of the total CPU time. It would be faster to do open+fstat rather than stat+open (as long as the server is delivering mostly 200s rather than 304s), but that might be too radical a change. Anybody have

Re: remaining CPU bottlenecks in 2.0

2001-09-05 Thread Brian Pane
dean gaudet wrote: [...] * memset() is called mostly from apr_pcalloc(), which in turn is used in too many places to yield any easy optimization opportunities. sometimes folks are lazy and ask for zeroed memory out of habit, when they could easily deal with garbage at less cost. Some good

remaining CPU bottlenecks in 2.0

2001-09-04 Thread Brian Pane
I'm currently studying profiling data from an httpd built from a CVS snapshot earlier today. In general, the performance of 2.0 is starting to look good. Here are the top 30 functions, ranked according to their CPU utilization. (This summary is derived from a Quantify profile of a threaded-MPM

Re: remaining CPU bottlenecks in 2.0

2001-09-04 Thread Justin Erenkrantz
On Tue, Sep 04, 2001 at 08:00:35PM -0700, Brian Pane wrote: I'm currently studying profiling data from an httpd built from a CVS snapshot earlier today. In general, the performance of 2.0 is starting to look good. Cool. This probably means the code is starting to look good, too. * The

Re: remaining CPU bottlenecks in 2.0

2001-09-04 Thread William A. Rowe, Jr.
From: Justin Erenkrantz [EMAIL PROTECTED] Sent: Tuesday, September 04, 2001 11:46 PM Based on the patches you submitted (and my quasi-errant formatting patch), I had to read most of the code in mod_include, so I'm more familiar with mod_include now. I do think there are some obvious ways