How do I find out what sites are using too much RAM on my linux web hosting box

Solution 1:

Drop the PHP memory limit to a lower value (memory_limit config var in php.ini); the script that's consuming all the memory will error out and that'll identify the problem. If the problem still happens without visible error, keep dropping the memory limit. If everything starts erroring out, you dropped it too far. If you can't find a happy medium between "everything dies" and "nothing dies", consider the possibility that it's not actually a PHP script hogging all your memory, and start looking at other possibilities (cron jobs, background processing jobs, that sort of thing).