Really can't find much about this.. hopefully someone can help. I'm spooling up a 100GB java heap to serve as a big data cache. In order to avoid conflicts with things like the filesystem cache, and because it performs better in general, I'm allocating this in large pages.
I've reserved 51,200 x 2MB huge pages and everything starts up just fine. When I kill the process and restart, however, it looks like Linux leave some of these pages as 'rsvd'.
# less /proc/meminfo | grep Hug
AnonHugePages: 0 kB
HugePages_Total: 52000
HugePages_Free: 50952
HugePages_Rsvd: 1634
HugePages_Surp: 0
Hugepagesize: 2048 kB
As far as I know I don't have anything else on the system configured to be requesting or reserving those pages. Does Linux provide a way for me to either see what is keeping those reserved and/or invalidate that reservation?
From everything I'm finding google they're not actually being USED, just that Linux is holding them in reserve, though interestingly not allowing my to use them when re-starting my huge JVM.
Any help would be great.