Fast Memory Dump

The Fast memory dump feature minimizes downtime when the user or MCP requests a memory dump. This is accomplished by storing the current memory image in a reserved memory area and processing it into a normal memory dump image while the partition has resumed running. For multiprocessor systems, the work in saving the memory image is split across up to four processors. You might require a key to enable this feature.

For systems that support memory licensing, the usable memory in a partition can be reduced by using a memory ceiling. The area reserved from the partition above the memory ceiling can be available for a fast memory dump if the area size is large enough to capture a dump image.

Systems configured for fast memory dump reserve a large segment of E-mode memory for the memory image; however this reserved memory appears as unused memory to the Windows environment, and Windows will reuse this memory for other Windows processes. When the MCP triggers a fast memory dump, it can take a significant amount of time to reclaim memory pages back into the firmware’s address space, which extends the dump time. The time to reclaim memory can be even longer on hypervisor-based environments where the hypervisor is also involved with low level memory management.

In order to improve performance, the MCP firmware’s memory lock feature (SYSOPS MEMORYLOCK) reserves the E-mode memory image for firmware usage. This does not prevent Windows reclaiming unused memory from the firmware, but makes it less likely. The overhead of acquiring all E-mode memory is spread out over MCP initialization and the end user should not notice any significant change in startup performance. Once the E-mode memory has been acquired, fast memory dump performance is improved because there is little to no interaction with Windows or any hypervisor to reclaim memory.

Notes:
  • Microsoft advises against this type of memory locking as it can cause other performance issues if the platform is low on memory. This feature cannot be enabled on systems with less than 5% free physical platform memory to reduce such performance problems.

  • The firmware memory lock is a strong suggestion to Windows, but still a suggestion. In extreme low memory conditions, the Windows environment or hypervisor may reclaim some E-mode memory, which will affect dump performance.

Fast Memory Dump Setup

The MEMORYCEILING (Set Memory Ceiling) command response indicates the current status of the fast memory dump. The MEMORYCEILING command response also includes the maximum memory ceiling value that enables using the fast memory dump. See the MEMORYCEILING command for information on setting the memory ceiling and the implications for a fast memory dump.

Once a memory ceiling has been established that makes a fast memory dump possible, the capability must also be enabled by setting the MDT FASTDUMP option. See the MDT (Memory Dump Type) command for additional information on the FASTDUMP option.

Indications of a Fast Memory Dump

When a fast memory dump occurs, the system pauses for a time period based on the size of memory and the number of processors available to save the current memory image. While the fast memory dump is in progress, the system is unresponsive. However, for fatal dumps, the normal memory dump screen is displayed to indicate that a fatal dump has occurred. Recovery is exactly as if it had been a normal fatal memory dump.

When the fast memory dump completes or the system recovers from a fatal fast memory dump, the following message is displayed:

FAST MEMORY DUMP COMPLETED IN <n> SECONDS

As with normal memory dumps, a memory dump message is displayed, a memory dump entry is logged in the system log, and an entry is placed in the MDT HISTORY file if one has been enabled.

An additional indication that a fast memory dump has occurred is the initiation of the independent runner FASTDUMPHANDLER.

Depending on the setting of various MDT and system options, the independent runner FASTDUMPHANDLER either automatically processes the fast memory dump or waits for an AX response in exactly the same way that DUMPDISKMASTER functions following a memory dump to disk:

  --Job--Task-Pri---Elapsed------ 1 WAITING ENTRY ------------
   613/  613  80      :00 Job FASTDUMPHANDLER
   ACCEPT:"OK"/"SAVE"/"PURGE"/"SKIP", DUMP BY "FAULTED_MCP_CODE" -
   12/27/07 @ 15:32:31

To determine whether an unprocessed dump resides in the fast memory dump region, use the MEMORYCEILING command. If a dump needs to be processed, the MEMORYCEILING command response indicates the following:

Fast memory dump is not available
Fast memory dump region contains a dump
        (Use 'DF' to unload or purge)

Processing a Fast Memory Dump

A fast memory dump image is processed into a normal memory dump image on disk or tape by the FASTDUMPHANDLER independent runner.

FASTDUMPHANDLER functions identically for fast memory dump as DUMPDISKMASTER does for dumps to a dumpdisk file. For instance,

  • AX responses to FASTDUMPHANDLER include OK, SAVE, SKIP, and PURGE.

  • Automatic unloading or saving of the dump file is based on the MDT AUTOSAVE, AUTOUNLOAD, and AUTORUNNING options as well as OP AUTORUNNING.

  • The DL DPFILES command determines the output location for the dump.

  • The DF command initiates FASTDUMPHANDLER when an unprocessed fast memory dump is resident in memory.

Both FASTDUMPHANDLER and DUMPDISKMASTER share the same underlying dump processing mechanism. For additional information on FASTDUMPHANDLER operation, refer to Handling Dumps to Disk in Memory Dump Processing.

Considerations For Use

Fast memory dump is primarily controlled by using the MDT FASTDUMP option, which enables the capability to be disabled even when memory licensing has resulted in a memory ceiling that would otherwise allow a fast memory dump to occur. By default, the MDT FASTDUMP option is reset.

The fast memory dump feature should be enabled where possible to minimize the memory dump interruption time. Consider the following when enabling the fast memory dump feature:

  • Indications of a fast memory dump do not appear until after the memory image has been saved. This could be a few seconds to a minute or two depending on the number of processors and size of memory.

  • ODT input is not possible and therefore the fast memory dump cannot be discontinued.

  • A fast memory dump for a particular memory and processor configuration completes in the same timeframe for all dumps. A test dump can therefore be taken for timing purposes to determine the expected interruption time for a fast memory dump.

  • When requesting an MCP Environment Dump from the MCP Console, this process dumps all of E-mode memory, which includes the fast memory dump memory area. This can lead to longer processing and transfer times due to the increased file size of the MCP Environment Dump.

  • When used in conjunction with NODUMP (option 13), the system may be configured to only allow fast memory dumps to be generated. That is, if a fast memory dump is possible, it is taken regardless of the setting of the NODUMP option. If the fast memory dump area is not available at the time of the dump request and NODUMP is set, the dump is suppressed, unless an operator entered primitive dump command is used.

  • If a fast memory dump is waiting to be processed by FASTDUMPHANDLER, you should not perform any maintenance actions that cause MCP memory to be initialized, such as deactivating the partition or installing new firmware.