Why is Linux not using more RAM for caching?


I have this on my server:

___________total       used       free     shared    buffers     cached
Mem:       7939312    6490588    1448724          0      66760     192064
-/+ buffers/cache:    6231764    1707548
Swap:     12485748     189256   12296492

So there is a 1 GB RAM (not much, I know) left but #Linux is not using it for caching which would greatly improve performance (it really does). vm.swappiness is 20 here.

Here are all cache settings:

# sysctl -a|grep cache
kernel.sched_domain.cpu0.domain0.cache_nice_tries = 1
kernel.sched_domain.cpu1.domain0.cache_nice_tries = 1
kernel.sched_domain.cpu2.domain0.cache_nice_tries = 1
kernel.sched_domain.cpu3.domain0.cache_nice_tries = 1
vm.drop_caches = 0
vm.vfs_cache_pressure = 100
fs.quota.cache_hits = 0
net.ipv4.rt_cache_rebuild_count = 4
fscache.object_max_active = 4
fscache.operation_max_active = 2

Which do I need to change (except adding more RAM but that costs me monthly more).