Private Memory

Definition

Other processes cannot use private (heap) memory. After releasing the assigned memory, the operating system still considers the (virtual) memory as being occupied by the allocating process. These characteristics of heap memory require that:

  1. The work process can be run in PRIV mode (private) when the local memory is assigned. This means that the work process is reserved for processing the current user context until the context releases the work process again when the request has ended.
  2. The work process, if it has used a lot of private memory, is restarted when the user context is terminated and the local memory is returned. The restart makes the local memory available again for other processes. A restart occurs if a work process uses more local memory than is defined in the parameter abap/heaplimit. The mechanism is displayed again there.

See also: Virtual Address Space of a Work Process

Use

If a dialog work process has used up the roll area assigned to it and the extended memory, private memory is assigned to the work process. The work process goes into PRIV mode (private).

In the parameter settings, ensure that not too many dialog work processes are simultaneously in the PRIV mode, since this lowers system performance.

The other Work Process types (background, update, enqueue and spool work processes) are assigned heap memory after the roll area is used up. Allocating Extended Memory is not useful since no context change occurs for these processes.

Integration

Automatic Termination of PRIV Mode Processes

If too many dialog work processes run in the PRIV mode in an SAP application server, performance problems arise. The normal processing of user inquiries is slowed down by the PRIV mode work processes.

The SAP System offers a mechanism that lets you terminate non-active dialog processes in the PRIV mode. This mechanism helps reduce performance problems.

The mechanism works as follows:

In the PRIV mode, a maximum number (n) of dialog work processes can run without any time restrictions.

To determine this number n, set the value of the profile parameter rdisp/wppriv_max_no. If a value is not entered, the SAP System determines this number using the following formula:

the number (n) is set to the greater of the 2 following values:

  • Number of dialog work processes minus 5
  • 1

If more than (n) dialog work processes are active and the time span set in parameter rdisp/max_priv_time (default 600 seconds) has elapsed, the transaction for that PRIV process, which has spent the longest possible time in PRIV mode, is reset.

You have configured 10 dialog work processes on one SAP instance. The parameters rdisp/wppriv_max_no and rdisp/max_priv_time are not changed (default settings).

Then, the SAP System checks periodically if more than 5 dialog work processes are in PRIV mode after 600 seconds (10 minutes). If this is the case, the transaction is reset that has been in PRIV mode for the longest time. A corresponding dialog box appears to the user.

If performance problems arise, you can change these parameters, but do this only after consulting with SAP.

Non-dialog work processes (background, update, etc.) are not contained in this mechanism and are also not considered.