Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

sudo jcmd PID GC.heap_dump /tmp/ameziane-test-regression-23-7-3-RC-2-heapdump-29092023-2.hprof
PID:
Dumping heap to /tmp/ameziane-test-regression-23-7-3-RC-2-heapdump-29092023-2.hprof ...
Heap dump file created [969758926 bytes in 5.839 secs] => 925MB


Image RemovedImage Added


One reason for the discrepancy between the heap dump and the current heap usage depicted in the graphs is that the JVM performs a full garbage collection (GC) prior to generating a heap dump.

...

process_resident_memory_bytes{instance=~'$system',job='besu-node'}-(jvm_memory_bytes_committed{instance=~"$system", area="heap", job=~".*besu-node"}+ignoring(area) jvm_memory_bytes_committed{instance=~"$system", area="nonheap", job=~".*besu-node"}+(jvm_threads_current{instance=~"$system", job="besu-node"}*1024*1024))

This metric will be added to Besu Full dashboard.

The off-heap memory usage appears to be very similar between the two releases.

Conclusion

Based on the detailed analysis of each component of the Java process memory usage, it's evident that the difference in memory usage at the process level between the two releases is primarily due to the new allocations associated with the new transaction pool.

...