I'm finding linux's swapping strategy to be somewhat less than ideal. In general I have a ton of processes running, maybe 40 or more big ones, and only end up using a few regularly. Nonetheless, I find that I often have to wait for pages to unswap when switching between these processes. Is there some reason why it wouldn't offload pages that aren't frequently used to swap space in order to make room for those that are?
I do have swappiness (/proc/sys/vm/swappiness) set pretty low (at 10). However it still seems like it's still not prioritizing frequently used pages properly; other pages should be getting swapped out instead of the ones that are frequently used. What can I do to learn more about this and/or fix it?