Show TOC

Object documentationPrivate Memory Locate this document in the navigation structure

 

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. Up to this time point no other user context can be mapped to the work process.

  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. The restart occurs if a work process uses more local memory than is defined in the parameter abap/heaplimit. The mechanism is displayed again there.

For more information, see Virtual Address Space of a Work Process

 

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.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. Mit diesem Mechanismus können Performanceprobleme verhindert werden.

Der Mechanismus funktioniert folgendermaßen:

Im PRIV-Modus können ohne irgendeine Zeitbeschränkung maximal n Dialog-Workprozesse laufen.

Sie legen n durch den Wert des Profilparameters rdisp/wppriv_max_no fest. Wenn kein Wert angegeben wird, legt das SAP-System n mit der folgenden Formel fest:

n wird auf den größeren der beiden folgenden Werte gesetzt:

  • Anzahl der Dialog-Workprozesse - 5

  • 1

Wenn mehr als n Dialog-Workprozesse aktiv sind und die Zeitspanne, die in rdisp/max_priv_time festgelegt wird (Default 600 Sekunden), verstrichen ist, wird die Transaktion desjenigen PRIV-Prozesses, der schon die längste Zeit im PRIV-Modus ist, zurückgesetzt.

Example Example

Sie haben 10 Dialogworkprozesse auf einer SAP-Instanz konfiguriert. Die Parameter rdisp/wppriv_max_no und rdisp/max_priv_time sind nicht verändert (Defaulteinstellung).

Dann prüft das SAP-System periodisch, ob seit über 600 Sekunden (10 Minuten) mehr als 5 Dialogworkprozesse im PRIV-Modus sind. Wenn ja, wird die Transaktion zurückgesetzt, die schon am längsten im PRIV läuft. Der Benutzer erhält ein entsprechendes Popup.

End of the example.

Diese Parameter können im Fall von Performanceproblemen verändert werden; dies sollte aber nur in Rücksprache mit SAP geschehen.

Note Note

Nicht-Dialog-Workprozesse (Hintergrund, Verbuchung etc.) sind in diesem Mechanismus nicht enthalten und werden auch nicht berücksichtigt.

End of the note.