Greg Ames wrote: >Aaron Bannert wrote: > >>On Thu, Jan 03, 2002 at 11:56:26AM -0500, Greg Ames wrote: >> >>>I do see some weirdness in 2.0.30 with www.apache.org/dyn/closer.cgi - >>>it looks like we're doing one byte reads from the pipe to the cgi. I >>>don't know yet if 2_0_28 does the same. >>> > >2_0_28 does the same, so that's not it. (sigh) But it sure looks >broken. I put new trusses of just running that cgi on both levels in >http://www.apache.org/~gregames > >>I don't think that would spike the run queue more than 1, no? >> > >I'm thinking that we've got something that burns CPU like crazy for a >while, then stops. If in the mean time normal I/O is completing, the >kernel would be adding things to the run queue at a normal rate. >Process just wouldn't leave the run queue as quickly as they normally >do. >
Right--A single process burning CPU, plus many others with requests to process, could explain the observed run queue length. From the 2.0.30 truss, I just computed the number of syscalls per request (by counting the lines between accept statements). In case it's helpful, most requests from this trace used between 28 and 50 syscalls, except for these three: http://xml.apache.org/dist/fop/ (130 syscalls for the directory listing) http://httpd.apache.org/docs-2.0/mod/ (85 syscalls) http://www.apache.org/dyn/closer.cgi (84 syscalls) http://dev.apache.org/ (60 syscalls, including stats for all the .html files under that dir(?), starting on line 5484 of the listing at http://www.apache.org/~gregames/2.0.30.truss )