When running a JVM with support for huge pages enabled (via -XX:+UseLargePages), will direct memory buffers allocated via NIO use huge pages for allocation, or will it use 'normal' memory not allocated into huge pages?
I suspect that direct memory buffers are not allocated out of the huge page set. This assumption is based on the observation that the number of consumed huge pages approximately equals the size of my allocated JVM heap (~4GB), while the drop in free memory (as reported by vmstat) drops approximately equal to the size of my allocated direct memory buffers. Then again, this might be observational fluff, so I'd much rather get the answer from someone that actually understands the Hotspot internals.
I'm currently using:
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)