Nice screenshot of 100% swap space being used on a popular but ill Perl app running under ModPerl::PerlRun.
Tasks: 85 total, 2 running, 83 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 14.8%sy, 0.0%ni, 17.0%id, 68.1%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 8174024k total, 8132492k used, 41532k free, 284k buffers
Swap: 2096472k total, 2096472k used, 0k free, 5648k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
308 root 10 -5 0 0 0 D 17.5 0.0 0:05.14 kswapd0
15985 apache 18 0 19.4g 7.7g 84 D 15.1 98.3 0:12.09 httpd
15996 root 16 0 12740 624 368 R 5.4 0.0 0:00.48 top
1 root 16 0 10348 124 32 S 0.0 0.0 0:01.69 init
The test server is a Dell 1950 with 8 GB RAM running CentOS 5.4 x64 and Apache 2.x.
The above problem illustrates one of the many reasons that almost all hosting providers adopted PHP instead of mod_perl.
PHP gives you good performance without the headaches of mod_perl, which get magnified in a shared environment.
However, if you have a dedicated machine, mod_perl is a great way to accelerate a Perl application as long as the program is reasonably well-behaved.

