CPU idle time
Did the performance problem occur in the past?
Which user is experiencing the problem?
Is the problem happening right now?
How close is it to quitting time?
High CPU utilization near 100%
High CPU idle time
High swap/paging activity
High DB time
SAP Management Console
Executable program sappfpar
SQL statement which requires many records to be transferred to the ABAP program.
SQL statement which uses index during data retrieval.
SQL statement which reads many blocks but retrieves only a few records from the database.
SQL statement which uses table buffering.
SQL Monitor can be switched on for all or dedicated servers.
SQL Monitor is designed to trace a single process.
SQL Monitor can trace every SQL statement coming from ABAP programs, which include all OPEN SQL, native SQL, and ABAP kernel SQL statements.
SQL Monitor has low impact on the performance of the production system.
SQL statements used by ABAP programs
SQL statements used by SAP Basis Tables
Recursive SQL statements
SQL statements used by Database Administration Tools
Execution plan (table/index access)
Estimated costs/Estimated rows
Single record buffered
Generic area buffered
Client specific buffered
Tables that are seldom changed.
Large tables that are often accessed.
Time needed to establish the RFC communications to the RFC server.
Time needed to establish the RFC communication plus roll out time, roll wait time, and roll in time.
Roll wait time caused by RFC communication.
Synchronous RFC (sRFC)
Asynchronous RFC (aRFC)
Transactional RFC (tRFC)
Background RFC (bgRFC)
It can be switched on for all or dedicated servers of an ABAP system.
It can be optimized expensive SQL statements automatically.
It can trace each and every SQL statement coming from an ABAP program.
It can trace the SQL execution of selected ABAP work processes.
User context data.
Buffered programs and tables.
Objects associated with individual users and their open transactions.
Application program data that correspond to specific ABAP commands, such as "export to memory".
In a Unix system, more than 20% of RAM paged out/swapped out per hour.
In a Windows system, more than 25% of RAM paged in per hour.
In Unix system, more than 20% of RAM paged in/swapped in per hour.
In a Windows system, more than 20% of RAM pages out per hour.
Work processes that are started in certain situations and are stopped again when no longer needed.
Dialog work processes that can only be used for a specific task.
Work processes used to communicate with printers.
Work processes used to perform non-urgent changes to a database.
To creating better access paths to data.
To speed up access to data.
To save space on the hard disk.
To reduce load on the database.
If it is a database process, you use the database monitor (ST04) and check if this activity can be tuned or moved to another time.
If this process leaves 10% or less overall CPU idle time, there is no need for further action because there is still headroom.
If it an SAP work process, you compare the process ID (PID) to the list of transaction in SM50 to find out what activity is causing the load.
If it is the SAP gateway process, you might check if update processing can be moved to another instance.
To prevent outdated data from being selected from buffers.
To prevent outdated data being committed to the database.
To improve performance.
To reduce the load on the database.
As the time span between the dispatcher receives a request till he sends out the final response to the front end.
As the time span between the browser sends a request to the back-end till he completely rendered the response
As the time span between the roll-in and the roll-out of a work process is once completed.
As the time span between an ABAP request is being loaded into the program buffer till the request processing is finished.
The executing work process has a long-running action with "sequential read".
The executing work process has a long-running action with "PRIV".
The executing work process has a long-running action with "direct read".
The executing work process has a long-running action with "semaphore".
Work process utilization data of all instances of an SAP system.
Automatically refreshed information on local work process utilization.
The status of an individual work process, for example, waiting, running, on hold, etc.
The process ID of the work process.
The program that is currently executed by the work process.
Analyze the database.
Analyze the SAP memory configuration.
Perform a LAN Check by Ping.
Check the 'Top 40 CPU Processes' in transaction Operating System Monitor (ST06(n))
In the cursor cache of the DBS Cockpit.
In the transaction Operating System Monitor (ST06(n)).
In transaction SQL trace (ST05 or ST12).
In transaction Work Process Overview (SM50 and SM66).
Extended memory, Heap memory
Heap memory, Extended memory
Local memory, Extended memory, Heap memory
Heap memory, Extended memory, PRIV memory
SAP buffer (programs, tables, and so on).
Extended memory (user contexts).
If a buffered table is seldom changed, there is a risk of reading outdated data.
If a buffered table is accessed too often, there is a risk that the statistics of the database optimizer will become outdated.
If a buffered table is very large, there is a risk that other buffered tables will be swapped out because of missing free space.
If the content of a buffered table is changed very often, the process to refill the table buffer can reduce the overall system performance.
Its total response time and average response time are high.
Its average CPU time and/or database time are high.
Its number of steps is very low.
Its average CPU time is greater than the average processing time.
Not enough dialog work processes configured.
Problems with the external RFC communication.
SAP roll Area is too small.
Communication problems with the GUI front end.
An increased number of work processes accessing table REPOLOAD
Increased load and generation time in transaction ST03.
An increased number of program buffer swaps visible in transaction ST02.
An increased number of work processes entering PRIV mode.
Increased GUI time caused by unbuffered objects.
Shared memory is only accessible on operating system level.
Shared memory is accessible by all processes across all instances.
Shared memory is accessible only by dialog work processes of one instance.
Shared memory is accessible by all processes of one instance.
Estimated response time.
Estimated CPU cost.
Tables with a high number of invalidations.
Tables with a high number of 'Rows affected'.
Tables with a large buffer size.
Tables with buffer state 'pending'.
Tables with more direct reads than sequential reads.