httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ryan Bloom <>
Subject Re: Memory Hog
Date Sun, 10 Oct 1999 16:20:28 GMT

> Something needs to be done. I don't really understand why the
> ap_pollset_t isn't just a struct pollfd (or a thin wrapper around one).
> And why translate between POLLIN and APR_POLLIN et al. instead of just
> making them the same? Also, having to scan the whole pollset to find a
> particular socket is dreadful (especially since this is going to be used
> in a scan through all sockets in the main loop, making it an O(n^2)
> process).

Because we can't just use POLLIN.  On systems that don't have poll, POLLIN
isn't defined.  I could ifdef the code, to make it faster, but just like
the rest of APR, my goal has not been performance yet.  My goal for the
entire thing has been get something that works.  We can fix performance
when we have code that requires it perform.  There are ways to improve our
performance on poll systems, but nobody has done them yet.

One of the things on my list of things to do, is look through all of APR
with an eye towards performance, but I have found that it is far better to
get working code before you try to get optimal working code.  I would say
99% of APR is working fully, and when that number is 100%, we can look to
really focusing on performance in APR.  I believe we will have a working
APR long before we have finished all of the TODO's in Apache, so while
people were finishing the TODO's, I had planned to look at performance.
Of course, if somebody wants to get to it before I do, by all means!


Ryan Bloom               
6209 H Shanda Dr.
Raleigh, NC 27609		Ryan Bloom -- thinker, adventurer, artist,
				     writer, but mostly, friend.

View raw message