httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brian Pane <>
Subject [PATCH] pre-merge optimization for directory_walk and location_walk
Date Sun, 28 Oct 2001 01:10:25 GMT
[This is a repost of an uncommitted patch from earlier this month.
I've re-diffed against the latest code in CVS so that it will apply
cleanly.  The patch yields a reduction of about 15% in usr CPU
utilization (test case: shtml request with two subrequests).]

This patch creates a cache of pre-merged per-dir configs at
startup in order to optimize away dir-merge operations during
directory_walk and location_walk.  (Based on recent profile
data, dir-merges have ranked as one of the biggest remaining
CPU bottlenecks in 2.0.)

This cache is complementary to the per-request cache that
OtherBill recently added to dir_walk and location_walk.  The
per-request cache speeds up subrequests by using saved results
computed for the parent request, while the pre-merge cache speeds
up the the parent request itself.  In the optimal case, with no
.htaccess files, the pre-merge cache can reduce the number of
dir-merge operations during dir_walk and location_walk to zero.

I don't have pre-merge caching implemented for file_walk, but
it's probably possible to support it in the future.


View raw message