Como um sistema Unix usa memória é uma história muito longa e complicada. Adicionar o tamanho virtual de cada processo não fornece uma figura precisa do que está acontecendo. Uma abordagem muito melhor é rastrear o número do processo do httpd e a memória disponível (menos buffers / cache) conforme relatado por 'free'. Em seguida, plote-os em um gráfico e obtenha uma medida mais realista.
Enquanto no seu caso, isso é um pouco complicado por ter o verniz em execução, ele ainda lhe dará uma boa indicação de como a demanda afeta a memória.
Você não forneceu informações sobre como configurou o KeepAlives, o que causa um grande impacto no uso e no desempenho da memória. Nem você forneceu qualquer informação sobre o padrão de atividade no servidor - como o número de processos httpd varia ao longo do ciclo? Sem saber disso, é impossível comentar como são apropriados os detalhes do conf que você forneceu. No entanto, sua MaxRequestsPerChild é muito baixa, a menos que você suspeite que há um grande problema com seu código.
Além disso, sem saber mais sobre os volumes relativos de tipos de conteúdo, é difícil dizer o que ajudaria. Se você usar muitos CSS, JS e HTML estáticos, obterá muitos benefícios com a compactação.
8Cores e 18Gb? O Big Iron é a maneira ERRADA de construir uma arquitetura de servidor da web escalável.
my site performance is excellent. It loads in around 8 sec for the first time and second view is 2.5 seconds
Acho que temos diferentes interpretações da palavra "excelente"
Embora eu suspeite que há muito ajuste e refatoração a ser feito aqui (especialmente a julgar por todas as informações que você não forneceu em sua pergunta), eventualmente, você só precisa adicionar mais hardware. Enquanto isso, você pode querer comprar alguma ajuda.