I won't try to speak for Michael, but technically that memory does not
become available for reuse by Perl, even if they are lexical variables
and they go out of scope, unless you explicitly undef the variables.
Perl keeps the memory for them allocated as a performance
optimization.
That was the bit I was forgetting.
As said elsewhere I generally use a MaxRequestsPerChild value of 1000 which
means that any extra memory allocated in your child processes will be
returned to the OS fairly regularly and apache will fork a nice clean child.
Carl