• From the SAP R/3 main screen choose the option Tools -> CCMS, Control /Monitoring -> Performance Menu, Workload > Analysis. Alternately execute the transaction ST03N. On the following screen click the ‘Choose for analysis’ or the ‘Performance database’ pushbutton. The system displays a pop-up window ‘Choose server name’ for selecting a particular server. Choose any sever and click on the ‘Enter’ (green tick) icon.
Next the system displays another pop-up window for choosing a time period for the analysis. Choose an appropriate time period.
On the following ‘Performance Workload Overview’ screen the system will display the workload overview screen for the selected options. The workload report gives the average response time, CPU time, wait time, load time, and database request time. Collect the statistics.
• Click on the ‘Time profile’ pushbutton in order to get the same information broken down on an hourly basis. This is useful for identifying the most busy time periods. Collect the statistics.
• Click on the ‘Transaction profile’ pushbutton to get an overview of the top transactions used. Collect the statistics.
• Click on the ‘Top time’ pushbutton in order to identify the most resource consuming transactions in the system. Collect the statistics. This may be used to reschedule excessive resource consuming processes during off-peak hours (if possible) in order to improve the system performance.
Another way to improve performance is to identify the top transactions and try to buffer the tables or programs used by those transactions. However this is recommended only for user written programs or tables, since it is not recommended to change the buffering characteristics of SAP objects.
Some thumb rules for ideal system performance are:
• Average response time should be less than 2 seconds for dialog work processes in particular
• Average CPU time should not be more than 40% - 50% of the average Response time. Otherwise, we may need to focus on CPU intensive transactions and modify the coding logic (for user written transactions only)
• Average DB request time should not be more than 40% - 50% of the average Response time. Otherwise check for missing indices, focus on expensive SQL statements by running SQL trace (ST05) on the transactions being executed and create necessary indices (if possible), or enhance the RAM and the CPU capacity of the database server.
• Average Wait time should be around 1% of the average Response time. Otherwise either the number of work processes of the instance is not to manage the workload, or there are exceptionally long running transactions which block the work processes and hence should be run during off-peak hours (if possible).
• Average Load time should be around 10% of the average Response time. Otherwise we have to consider resizing the R/3 buffers.