The Memory Usage page shows information about current memory utilization within the LabKey Server process. This information can be useful in identifying problematic settings or processes. Access it via: (Admin) > Site > Admin Console > Diagnostics > Memory Usage.

Memory Graphs

The top section of the page shows graphs of the various memory spaces within the Java Virtual Machine, including their current utilization and their maximum size. The Heap and Metaspace sections are typically the most likely to hit their maximum size.

  • Total Heap Memory
  • Total Non-heap Memory
  • CodeHeap 'non-nmethods' Non-heap memory
  • Metaspace Non-heap memory
  • CodeHeap 'profiled nmethods'
  • Compressed Class Space Non-heap memory
  • G1 Eden Space Heap memory
  • G1 Old Gen Heap memory
  • G1 Survivor Space Heap memory
  • CodeHeap 'non-profiled nmethods' Non-heap memory
  • Buffer pool mapped
  • Buffer pool direct
  • Buffer pool mapped - 'non-volatile memory'

Memory Stats

Detailed stats about the pools available (shown above). Their initial size, amount used, amount committed, and max setting. This section also includes a list of system property names and their values.

  • Loaded Class Count
  • Unloaded Class Count
  • Total Loaded Class Count
  • VM Start Time
  • VM Uptime
  • VM Version
  • VM Classpath
  • Thread Count
  • Peak Thread Count
  • Deadlocked Thread Count
  • G1 Young Generation GC count
  • G1 Young Generation GC time
  • G1 Old Generation GC count
  • G1 Old Generation GC time
  • CPU count
  • Total OS memory
  • Free OS memory
  • OS CPU load
  • JVM CPU load

In-Use Objects

When the server is running with Java asserts enabled (via the -ea parameter on the command-line), the bottom of the page will show key objects that are tracked to ensure that they are not causing memory leaks. This is not a recommended configuration for production servers.


The links at the top of the page allow an administrator to clear caches and garbage collect (gc):

  • Clear caches, gc and refresh
  • Gc and refresh
  • Refresh
Garbage collection will free memory claimed by unused objects. This can be useful to see how much memory is truly in use at a given point in time.

LabKey develops, tests, and deploys using the default Java garbage collector. Explicitly specifying an alternative garbage collector is not recommended.

Related Topics

Was this content helpful?

Log in or register an account to provide feedback

expand allcollapse all