The workload monitor uses the information collected by background running data collector programs and therefore enables one to do an analysis for both current time periods, and for previous weeks and months. The workload analysis monitor should be used to obtain general overview for the entire SAP R/3 system and tune the system in case of performance problems. This should be a daily activity particularly in the production environment. However the GAIL Basis Administrator should use the workload monitor in the Production environment in order to gather experience and have a clear concept about the workload analysis statistics. This will help the administrator to foresee problems and, in many cases prevent them. Perform the following sequence of actions in order to do a workload analysis
• 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.