Using the paging mechanism lazy page out (removing the pages that are not in the address area of an active process), Windows NT creates permanently free working memory (see Special Features under Windows NT). Therefore, Transaction ST06 displays a very high value for Physical mem free in comparison to Physical mem avail (see the following graphic). Due to a faulty interpretation, the number of work processes is often increased ("There is still unused working memory available").
Instead of using Transaction ST06, you can also use the menu path:
Tools ® CCMS ® Control/Monitoring ® Performance Menu ® Operating System ® Local ® Activity
Compare the chapter Operating System Monitor: Overview from the CCMS documentation.
A higher Physical mem free-value has no bearing on the memory use of the system (no. 9 in the following graphic). Physical mem free in relation to Physical mem avail is by definition very large (see Windows NT: Paging Mechanism Lazy Page Out).

If with Transaction ST06 or on the CCMS Alert Monitor you notice a high paging rate in a memory pool, enlarge this pool. The paging rate should be less than 10 faults per second. The following example can help you when assessing paging rates in your system:
Faults in the memory pool used by R/3 | 200 faults per second |
Number of active work processes (not the total number of work processes) | 10 |
Average number of faults per work process | 20 faults per second |
Paging overhead (assumed average response time of the hard disks is 10 millisec.) | 200 millisec. per second |
This corresponds to a paging overhead of 20%. Do not exceed the 20% limit.
The following graphic displays the screen for transaction ST06. In the first screen, the current values for Pages in/s and Pages out/s are listed (in the following graphic under the heading Memory ).

To display the selection screen for more detailed information, choose Detail analysis menu. To get a list of the Pages in and Pages out values in the past 24 hours, in the block Previous hour choose Memory. The following screen displays this report.

You can find operating system-dependent checks in the following sections:
UNIX
Windows NT
AS/400
Prerequisites
Unlike Windows NT, pages are swapped out to the working memory under UNIX if the space is needed, and then they are overwritten. This swapping out uses up valuable time and performance.
Transaction ST06 displays a small Pages out value and a similar Pages in value in a performing system. The Pages out value is very important when assessing system performance.
Procedure
The following values for Pages in should not be exceeded in the short or long-term.
Value Limit: Pages out under UNIX:
Pages in | Value Limit: |
Short-term maximum for Pages in/s (Transaction ST06) | 200 |
Long-term maximum for Pages in/h (Transaction ST06) | 600.000 |
Prerequisites
If the operating system is not occupied with other functions, all the pages in the working memory that are not in the address area of an active work process are swapped out (lazy page out) of the operating system as a preventive measure. If space is then required, the pages already swapped out only have to be deleted.
In a performing system, Transaction ST06 thereby displays a high Pages out value and a small Pages in value in relation. This indicates that many of the swapped out pages were not overwritten and could not be included again through a work process without a page file access. Therefore, only the Pages in value is very important when assessing system performance.
See: Special Features under Windows NT
Procedure
The following values for Pages in should not be exceeded in the short or long-term.
Value Limit: Pages in under Windows NT
Pages in | Value Limit: |
Short-term maximum for Pages in/s (Transaction ST06) | 200 |
Long-term maximum for Pages in/h (Transaction ST06) | 600.000 |
A high Pages out value has no bearing on system utilization. Only the Pages in value is used as a measure of system utilization. If the value limits are exceeded, this an indication that the memory capacity of the machine is too small.
Prerequisites
If there is data already in main memory, it can be referred to independent of the memory pool in which it is stored. However, if the necessary data is not available in any memory pool, it is brought into the same memory pool as the job that refers to it. (This is described as page faults.) When data is transferred into a memory pool, other data is moved, if it is being changed, and is automatically stored in the auxiliary memory. (This is described as paging.)
Procedure
Under OS/400: Pages in = Pages out.
Since page defaults hinder performance, the memory pool must be large enough to keep paging to an acceptable amount.
Value limits for page faults under OS/400
If in Transaction ST06 or on the CCMS Alert Monitor you notice a high page default rate in a memory pool, enlarge this pool.
Pool | Value Limit: |
Machine pool (always system pool 1) | Since the machine pool contains objects used across the whole system, page faults in the machine pool affect all the jobs in the system. For this reason, ensure that the page fault rate is as low as possible in this pool. Value limit: 10 page faults per second |
Other pools | For optimum performance, an average rate of 2 page faults per second for each active work process should not be exceeded. The upper limit that should not be exceeded is a rate of 20 page faults per second for each active work process. (see example below) |
The following examples can help you when determining page fault rates in your system:
Best Performance:
Number of active work processes: (AS/400 jobs with status RUN) | 10 |
Number of page faults for each active work process | 2 faults per second |
Permitted | 20 page faults per second |
Paging overhead for each work process (assumed average response time of the hard disk is 10 millisec.) | 20 millisec. per second |
This corresponds to a paging overhead of 2%.
Upper Limit
Number of active work processes: (AS/400 jobs with status RUN) | 10 |
Number of page faults for each active work process | 20 faults per second |
Permitted | 200 page faults per second |
Paging overhead for each work process (assumed average response time of the hard disk is 10 millisec.) | 200 millisec. per second |
This corresponds to a paging overhead of 20%. The 20% limit should not be exceeded.
By using the following tools, you can monitor how the memory resources are used within the R/3 System:
Guidelines: If the available swap space is less than 200 MB, increase the swap space (virtual memory paging file under Windows NT).
Examples:
Checking Unused Working Memory using Transaction ST06
AS/400: When you determine the relevant paging activities of the operating system with Transaction ST06, enlarge the corresponding memory pool. See AS/400.
Examples:
Checking Roll /Paging Area and Extended Memory using Transaction ST02
Using Transaction RZ03, you can determine how much Extended Memory your server allocates. The peak value under Memory management displays the high water mark (maximum allocation) for Extended Memory.
Examples:
Overview of All Application Servers using Transaction RZ03
By monitoring work processes in the R/3 System (Transaction SM50) or from outside the system (dpmon), you can determine the status of the work processes in relation to the PRIV mode. If work processes are often switched to the PRIV mode, you must increase the Extended Memory and/or adjust the limit for the Extended Memory. In this case, you must consult with SAP.
You can evaluate this information for all the work processes by using Transaction SM66.
For more information on this topic, read the CCMS documentation. CCMS: Overview
You can use Transaction ST02 to check if the buffers from the roll and paging areas are the same size as the paging files. By comparing the values under Max. use, you can check if the buffer size is large enough.
You can determine from the row Extended Memory that the R/3 Extended Memory is sufficiently large. The value Max. use is, in this example, noticeably smaller than the created memory area (In memory). If both values are identical, you must increase the extended memory (profile parameter: em/initial_size_MB).

Transaction RZ03 (CCMS Control Panel) gives you an overview of all the application servers in a distributed system. The system administrator can use this overview to decide which application server has to be analyzed more closely. To display the memory usage of the application servers, choose Edit ® Other views ® Memory management ® Absolute values. In the first four columns, the list displays the usage of the Extended Memory for the individual application servers. If the value Peak used reaches the value of Total, the memory management of the application server must be better configured. Servers beginning with "hs" are UNIX machines and Servers beginning with "pn" are Windows NT machines.
An overview of the memory management parameters will be shown in the following sections.
A description of the parameter always follows the unit in which it is specified, the default value and a proposed value. The default value usually is based on a minimal value, therefore for very small R/3 installations (see Application Servers with Up to 15 Users), the proposed value is based on a midsize to large installation (see Application Servers with Up to 50 Users and Application Servers with Over 50 Users).
The specified default values and proposed values are based on UNIX systems; under Windows NT, the parameter setting is explained in the unit Parameter Overview for Windows NT.
Controlling Memory Management
abap/heaplimit: Work Process Startup
Memory Management Resources
ztta/roll_extension: Extended Memory Limit
abap/heap_area_dia: Heap Memory Limit for Dialog Work Processes
abap/heap_area_nondia: Heap Memory Limit for Non-Dialog Work Processes
abap/heap_area_total: Heap Memory Limit
Memory Management Limitations
em/initial_size_MB: Extended Memory Pool Size
rdisp/ROLL_SHM: Roll Buffer Size
rdisp/ROLL_MAXFS: Maximum Roll File Size
rdisp/PG_SHM: Paging Buffer Size
rdisp/PG_MAXFS: Maximum Size of the R/3 Paging File
ztta/roll_area: Roll Area
ztta/roll_first: Initial Allocation Size from the Roll Area
em/blocksize_KB: Segment Size for the Extended Memory
Memory Management Statistics
em/stat_log_size_MB: Statistics - User Context Size
em/stat_log_timeout: Statistics - User Context Size
Look at the unit that corresponds to your platform on configuring the memory management system:
Configuration for UNIX / Windows NT
Configuration for AIX
AS/400 Configuration
Memory Management under Windows NT
If the CCMS Alert Monitor or Transaction ST06 (see Monitoring the Status of the R/3 System) displays a high paging rate for the operating system, decrease the size of the roll and paging buffers (only Windows NT and UNIX). In the profile management of the CCMS, set the profile parameters rdisp/ROLL_SHM and rdisp/PG_SHM to 0. You must change the profiles used by the R/3 application servers on the relevant host system.
If free memory is available even during heavy system usage, or if there is only low paging activity, you can increase the size of the roll and paging buffers. This decreases the accesses to the hard disk caused by rolling and paging.
By using the following parameters, you can limit the maximum use of the process-specific memory. This in turn limits the maximum use of swap space by an R/3 application server. Consider the following parameters:
Parameter | Limits the amount of process-specific memory used... |
abap/heap_area_dia | ...by any particular dialog work process |
abap/heap_area_nondia | ... by any particular non-dialog work process (background, spool, etc.) |
abap/heap_area_total | ...by an R/3 application server -- all dialog and non-dialog work processes |
You can find more information on the functions of these parameters under Limits for Allocating Heap Memory in Functions of the R/3 Memory Management System.
Normally, only background work processes use a large amount of swap space.
Dialog processes do not usually use a lot of swap space, as long as the following conditions apply:
The following generally applies: The more main memory that an application server has, the better the performance.
Symptom: Error messages in the trace files dev_disp, dev_w
Help: Preventing Swap Space Bottlenecks (only UNIX /NT) or decrease extended memory and/or increase main memory.
Help: These symptoms can occur if the maximum number of 10 shared memory descriptors is exceeded. You can find more detailed information under Shared Memory IDs under IBM AIX or in the OSS system in Note 28992.
Symptom:
Various error messages that refer to memory bottlenecks (a swap space bottleneck), for example: System Panic; cmemreserve: reservation overrun; ENOMEM, Not enough core; ENOSPC, No space left on device; SIGDANGER (only under AIX). In the R/3 System, the R/3 system log message "no memory of class perm" is output.
This problem can occur with R/3 processes and external processes as well. The relevant process cannot allocate anymore heap memory. This can lead to the database operation being ended or R/3 work processes being stopped.
In the R/3 System, error messages appear in the developer trace files dev_disp, dev_w
This problem mostly occurs if background jobs are active with large amounts of data.
Possible Causes
Corrective action
Increase the swap space or decrease the R/3 Extended Memory. If the swap space already corresponds to the SAP recommendations, 1.5 to 2 GB may still be required. There should always be several hundred MB of free swap space available. You can reduce the maximum swap space need of the R/3 System by reducing the value of parameter abap_heap_area_total. For more detailed information, see Monitoring the Memory Management System.
You can also distribute the load onto several application servers and increase the roll area. Check if the maximum process size (operating system parameters) is sufficient.
Symptom
Error messages in the trace files dev_w
Corrective action
Increase the swap space or decrease the R/3 Extended Memory.
If necessary, increase the roll area.
Check if the maximum process size (operating system parameter) is sufficient.
See: Swap Space Bottleneck During R/3 Operation
Symptom
Under AIX, the heap memory may not exceed 256 MB. Extensive background processing jobs that exceed this limit may allocate R/3 Extended Memory; however, the Extended Memory may be used up.
Corrective action
Try to solve the problem using the following procedures. Note the sequence they are given in. If the problem cannot be corrected with one of these procedures, try the next procedure.
Symptom
Under the operating system OSF/1 from Digital Equipment Corporation, and under UNIX operating systems (64-bit), R/3 processes with the following error message are canceled: mprotect failed, rc = 12 error code ENOMEN (not enough core)
Corrective action
The cause of the problem may be that the value of the OSF/1 kernel parameter VPAGEMAX has not been increased. You must increase this parameter value so that the SAP memory management system can be used.
You can find detailed information on increasing the parameter VPAGEMAX under OSF/1 in the R/3 installation guide OS Dependencies. You receive this document with all R/3 installation and upgrade packages.
You can find additional information on VPAGEMAX in the man-page mprotect under OSF/1, return code ENOMEN.
The value for VPAGEMAX is calculated in the following way: The sum of values for all R/3 system profile parameters em/initial_size_MB on all R/3 application servers of the host system divided by its page size:
S (initial_size_MB of all R/3 servers)/page size
Symptom
There is heavy operating system paging, especially page out, and high swap rates.
Corrective action
Increase the main memory or roll area.
Requirements
The R/3 Extended Memory is completely filled; dialog work processes are switched to PRIV mode.
Procedure
Use Transaction SM50 to determine the work processes in the PRIV mode.
Possible causes /Corrective action
In this example, work processes 5 and 6 cannot allocate any more Extended Memory because the pool is used up, although its limit for ztta/roll_extension would still allow Extended Memory. They switch into PRIV mode prematurely (see Allocating Memory for User Contexts)
Action:
Increase the R/3 Extended Memory pool ( em/initial_size_MB: Extended Memory Pool Size) to prevent the work processes from being switched to PRIV mode.
Action:
Increase the limit for the Extended Memory using ztta/roll_extension.
Decrease the limit for the Extended Memory (set with parameter ztta/roll_extension), or increase the Extended Memory (see ztta/roll_extension).
feedcat.net promotes your content, measures audiences
and saving load of your server resources!