I am running a simple java process running jetty, for which top shows 2.9g of RAM. JDK version used is 1.8.0_112.
Using Native Memory Tracking (jcmd), it is showing total committed memory is just 1.5G of memory
Also the direct buffer pool size is very less, as reported by jvisualvm.
I am completely aware that memory shown by NMT is committed memory which need not to be in RAM. In that case contribution of NMT memory to RES should be < 1.5GB of RES memory.
In my case, the difference here is of ~1.4G (RES is showing 1.4G of more memory) which can't be attributed just to the shared libs, jars. Can someone suggest me how to know what this extra memory is and which tools can be used to check them?
I have checked all the existing related issues online/Stackoverflow, but couldn't find any suitable answer.