Here is an example of some processes from one of the web servers in our web clusters.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
7177 <userid> 15 0 294m 23m 3536 S 9.9 0.3 0:01.48 httpd
6637 <userid> 15 0 289m 19m 3332 S 5.9 0.2 0:04.16 httpd
5461 <userid> 15 0 289m 19m 3416 S 4.3 0.2 0:03.55 httpd
3125 <userid> 15 0 294m 23m 3244 S 3.0 0.3 0:03.78 httpd
2 of those processes above are using 19megs of ram and two are using 23megs of ram as indicated in the RES column.
You should not be worried about VIRT memory usage you should be looking more at RES or “resident memory” usage. This will vary from server to server based on apache modules that are loaded/being used as well, but in my opinion you should generally see RES in the 15m - 30m size range for most EE sites, though could be larger depending on certain processes like file uploads and image processing. It would be extremely rare to see the RES memory size grow very much larger than the php memory_limit size set in php.ini.
A good description of the VIRT RES and SHR memory columns in top:
VIRT column (virtual memory size of the process) means how much memory a particular application has requested, also it counts swapped to the disk memory pages. But this field does NOT mean that this process actually uses that amount of memory, to use it for real this memory has to be initiated for example using memset. Generally speaking you can disregard this column.
RES column (resident set size, the non-swapped physical memory that a task has used is the most important one – it actually shows how much physical RAM is allocated for a process.
SHR column says how much memory a particular application is sharing with other applications. E.g., most applications in Linux depend on libc, and as every application links with it and uses its functions then this library memory space is mapped to all process simultaneously to conserve memory.
Only thing I can say is that if your hosting provider is basing “memory usage” on the VIRT memory size rather than the RES memory size I would recommend finding a new hosting provider quickly.