Table 2-1 describes native memory categories used by NMT. These categories may change with the release.
Table 2-1 Native Memory Tracking Memory Categories
| Category | Description | 
|---|---|
| 
 Java Heap  | 
 The heap where your objects live  | 
| 
 Class  | 
 Class meta data  | 
| 
 Code  | 
 Generated code  | 
| 
 GC  | 
 data use by the GC, such as card table  | 
| 
 Compiler  | 
 Memory used by the compiler when generating code  | 
| 
 Symbol  | 
 Symbols  | 
| 
 Memory Tracking  | 
 Memory used by NMT itself  | 
| 
 Pooled Free Chunks  | 
 Memory used by chunks in the arena chunk pool  | 
| 
 Shared space for classes  | 
 Memory mapped to class data sharing archive  | 
| 
 Thread  | 
 Memory used by threads, including thread data structure, resource area and handle area and so on.  | 
| 
 Thread stack  | 
 Thread stack. It is marked as committed memory, but it might not be completely committed by the OS  | 
| 
 Internal  | 
 Memory that does not fit the previous categories, such as the memory used by the command line parser, JVMTI, properties and so on.  | 
| 
 Unknown  | 
 When memory category can not be determined. Arena: When arena is used as a stack or value object Virtual Memory: When type information has not yet arrived  |