
Native Memory Tracking
The Native Memory Tracking (NMT) functionality is available since Azul Platform Prime 16.01.0.0. It includes invocation of Memory-tracking functions to record allocations. It also introduces the use of NativeMemoryTracking
pre-header to each allocation (when the feature is enabled).
To enable Native Memory Tracking, use the following command-line options:
java -XX:+PrintNMTStatistics -XX:NativeMemoryTracking="summary"
The "summary" level of tracking provides basic information about the following native memory allocations:
-
JavaHeap – amount of the native memory allocated for the Java Heap. The committed portion displays the Xmx value.
-
Class – amount of the native memory allocated for the application classes
-
Thread – amount of the native memory allocated for the application threads
-
Code – amount of the native memory allocated for the code is being executed
-
GC – amount of the native memory used by the Garbage Collector
-
Compiler – amount of the native memory allocated for the compiler operations
-
Internal – internal allocations
-
Symbol – amount of the native memory allocated for the table of symbols
-
Native Memory Tracking – amount of the native memory used for the NMT processes
-
Arena Chunk – allocations for the arena-managed chunk
-
Arguments – amount of the native memory allocated for processing arguments
-
Unknown – unspecified allocations
Below is a screen capture of a sample NMT output.
