Professional Documents
Culture Documents
SAP Memory Management
SAP Memory Management
Parameters-:
MEMORY ALLOCATION-:
Memory allocation sequence to dialog work processes in SAP. This article answers the following
questions-:
1. Initially a defined roll area is used. This roll area is defined by the SAP parameter
“ztta/roll_first.”
Usually ztta/roll_first is set to 1 in SAP, so that only technically necessary amount is allocated to roll
memory. If the memory from the initial roll area [ztta/roll_first] is not sufficient for the user context then,
2. Extended memory is used until the extended memory is full or until the user quota is reached.
Extended memory is defined by the SAP parameter “em/initial_size_MB” and the user quota for dialog
work process is defined by the parameter “ztta/roll_extension_dia”. If this memory is not sufficient then,
3. The rest of the roll area is used. This roll area is defined by SAP parameter “ztta/roll_area _
ztta/roll_first”
4. The system is forced to use local heap memory [private memory]. Then the work process goes
into PRIV mode.
HEAP MEMORY is available until one of the following occurs-:
1. Either the limit of the heap memory for dialog work processes is reached [abap/heap_area_dia]
or the entire heap memory of all the work processes [abap/heap_area_total] for an application
server reaches its limit.
2. Operating system limit of allocation of memory.
3. The swap space in the host system is used up or the upper limit of the OS address space is
reached.
The work process cannot be terminated by the parameter “rdisp/max_wprun_time” [PRIV] when a work
process enters PRIV mode, it remains connected to the user until the user ends the transactions or it is
timed out by the system due to the memory or explicitly logged out using SM04/DPMON.
Question-: Users complain that they could not access the system [globally] users are encountering the
hour glass mode, SM50/SM66/SM21 are not accessible.
1. Check the system status using DPMON/SAPMMC [download sapmmc for unix/windows]
2. Identify the process that has been logged for longer time.
3. Kill the process [if dpmon could not kill] then use task manager or kill command on unix.
Restrict the processes that goes into wp PRIV mode by using parameter “rdisp/wppriv_max_no=1 or 2”
NOTE-: The long memory programs/ transactions can be split into Variants (monthly) and schedule to
run the background during off peak hours.
PHYS_MEMSIZE=2GB
It is used to configure the physical memory, if more than one instance is configured.
If there is only one instance then by default it takes the complete memory.
A. ST02 — for system memory
B. SM04 — for user memory
C. ST03 — programs/transaction memory
D. SM66 — process memory
“top” command in Linux to see all the processes, used memory, free memory etc.
If the memory is not released then we use command “ipcrm” or use “cleanipc” to release the memory
blocked at OS level.
LOGGING
TRACING
These are explicitly switched on the system to trace/track either a user missing authorization, en queue
issues, rfc issues, sql issues, kernel issues etc.
Select the trace and switch on. Specify the user, process etc
ST05 is used to identify the expensive SQl statements and explain about the SQL statements.