Description of Business Function Memory Diagnostics (BMD)

The KRM system enables you to engage BMD Profiling and includes BMD (BSFN Memory Diagnostics) in an easy-to-use format. BMD is a memory profiler which can track and isolate memory leaks to a particular business function and provides output of memory in .csv format. The BMD is considered a last resort to identify the cause of memory problems.

There are three levels of BMD:

  • The first level provides memory usage through the lifetime of all processes, to help narrow down where the problem is occurring.

  • The second level provides information about Business Functions (BSFNs) (for BSFN levels 1 and 2) after the kernel memory exceeds a given threshold.

  • The third level provides information about BSFNs (all BSFN levels) after the kernel memory exceeds a given threshold within a specified BSFN running at a specified level.

The first level is sampled memory logging that can be used for all types of kernel processes. The second and third levels are BSFN-specific memory logging. The types of kernel processes that run BSFNs are CallObject kernels, UBEs, and Subsystems.

The BMD data is written to the debug log file, even if debug logging is not turned on. The trigger for the third BMD level can also be used to activate full debug logging, to provide a detailed context around the memory problems.

Waiting to turn on debug logging until after the trigger conditions are met can eliminate huge debug-log files, which might take a lot of analysis to identify the portion of the log file that is related to the actual problem.