in reply to memory not freed after perl exits. Solaris.
Whether this will work on Solaris in the same way that it does in Win I have no idea, but it's worth a shot.
I noticed that if I've run a program that does a lot of heavy IO, the free memory remains low long after the program has ended due to high file system cache usage. And it can take the system many minutes before it gets around to flushing everything back to disk.
I found that if I run a process that utilises a lot of VM, then that forces the flush much more quickly.
On my 4GB system, after running a simple perl -E"$x='x' x 2**31", the free memory is close to its maximum and system cache usage almost zero.
Using perl -E"$x='x' x 2**30" isn't quite as fully effective, but runs a heap more quickly.
|
|---|