HP 3000 Manuals

Examining a CPU Utilization Case [ HP RXForecast Users Manual for MPE Systems ] MPE/iX 5.0 Documentation


HP RXForecast Users Manual for MPE Systems

Examining a CPU Utilization Case 

For this example, you are going to look at the CPU Utilization of
Trapper.

You know before forecasting that the CPU should be upgraded to handle
workload growth.  What you would like to know is if the workload growth
would continue to grow if there were adequate resources at the CPU to
accommodate it.

The immediate goal is to determine if there has been steady growth in CPU
Utilization globally, and then specifically for Session CPU Utilization
and Job CPU Utilization.

RXForecast Options Selections 

For this example, choose from the RXForecast Options command dialog box
as follows:

[]
* Seasonality Level. By default there should be a check mark in every seasonality box, including Auto Seasonality. * Confidence Level. Set the confidence level to 90% Confidence. * Interval Type. Choose Confidence Interval. Forecast Selections Choose options from the Forecasts command dialog box as follows: * Metric. Begin by looking at all three CPU metrics: * Global CPU Utilization. * Job CPU Utilization. * Session CPU Utilization. You select multiple metrics by holding down Shift and clicking on each metric. * X-Axis. Set the X-Axis to 6 months. * Ignore Weekends. Check Ignore Weekends to exclude weekend data. * Points Every. Choose Points Every Day. * Shift. Choose a standard work day of 8 AM to 5 PM. * Dates. Leave the start/stop days at the default so that the entire logfile is shown. * Trending Method. For this first look at the data, select Smoothing. This should show you a basic average of how the CPU is being utilized for each metric. * Show Threshold. Click on NEXT to verify that the Show Threshold option is set at 0. Resulting Graphs Run the model to get the following graphs:
[]
[]
[]
Analysis If you look closely at different time periods in the graphs, you see that in every case the utilization is fairly steady and may even decrease from March through April. Beginning in May, a steady growth takes place and lasts for approximately 2 months. In July, growth subsides; notice the short downward trend. Finally, in August utilization stabilizes again. If you look at each metric individually, you see the following: * Global CPU Utilization. Global CPU Utilization was running from 60-70 percent for the first 2 months. It dipped for a short time, then climbed to an average of nearly 90 percent, dipped back down to 70 percent, and then settled back up at the 90 percent mark. * Session CPU Utilization. Session CPU Utilization was stable at 8 percent until May, and then climbed over 15 percent to almost 20 percent, and then leveled off just under 15 percent. * Job CPU Utilization. Job CPU Utilization was steady between 25-30 percent, dipped to 22 percent, then climbed to over 30 percent, and settled at about 30 percent. Conclusions The system was running fairly steady for March and April, then there was a steady increase of utilization for two months, followed by a period when the utilization leveled off. You know from experience that when Global CPU Utilization exceeds 70 percent the machine's performance may potentially suffer and response may become more erratic. You also know that it is impossible to utilize a device over 100 percent. This band of uncertain performance between 70 and 100 percent is what causes longer response times at terminals and longer running batch jobs. You can verify this expectation by looking at the response time graphs for this logfile. Close the open graphs and return to the Forecasts command dialog box. Change the metrics to First Response and Response to Prompt. Draw the following two graphs:
[]
Notice that in early June these graphs show a dramatic increase in response times. The system appears bottlenecked on CPU. If the batch jobs were unnecessary and could be rescheduled, you should see a dip in Job CPU Utilization after the CPU exceeded 80 percent. Since you see no drop, those batch jobs must be important enough that with this increase and the increase of the session load, response times have suffered. This system will continue to experience erratic response times and the CPU will remain above 80 percent until the workload mix is altered or the CPU is upgraded. Close the open graphs. Reforecast Verify that the growth of the Job and Session CPU Utilizations is stunted by CPU saturation by seeing how the actual data would compare to a forecast generated by the data from May and June. Return to the first steps in the forecasting process. RXForecast Options Selections Change the following options in the RXForecast Options command dialog box: * Interval Type. To get a confidence interval with the widest spread possible, select Prediction Interval for the Interval Type. Forecast Selections Make the following changes on the Forecasts command dialog box: * Dates. Set the start date to May 2nd and the stop date to June 30th. Leave the validate date at the end (Last). * X-Axis. Leave the X-Axis at 6 months. With the Dates option, choose a time frame of 2 months. Since the historic data spans only 2 months, you would ideally forecast no more than another 2 months. The X-Axis option of 6 Months is the best fit to this 4-month ideal. * Trending Method. Select the Linear method for forecasting. Resulting Graphs Draw the following Global, Session, and Job graphs:
[]
[]
[]
Analysis Look at the Session and Job graphs. Notice that the actual data did not grow as the forecast predicted. If you check the Global CPU graph, you will note that little or no growth was possible because the actual utilization was very close to 100 percent. Reforecast What else can you learn from this data? From the preceding graphs, you can see that CPU is saturated; you cannot add demand until you increase the resource. Close any open graphs. Next generate a linear forecast for the CPU components. Use all of the data in the logfile. Then verify its validity. Return to the first steps in the forecasting process. Forecast Selections * Dates. Move the start date to the beginning and the stop date to last. * X-Axis. Change the X-Axis to Year since the time frame spanned by the dates is 6 months. * Trending Method. Choose Linear. Resulting Graphs Run the model again to get the following graphs:
[]
[]
[]
Analysis Note that Week of Month seasonality has been detected and included in the forecast for the Global CPU Utilization graph. Investigate the validity of these forecasts by reviewing the Stats reports. The table below shows the relevant numbers. Table 5-1. Statistics | Standard Error | R-Squared | T-Probability | | | (slope/intercept) | | | Global CPU | 15.76 | 0.27 | 100/100 | | | Session CPU | 2.88 | 0.54 | 100/100 | | | Job CPU | 6.02 | 0.07 | 100/99.6 | | | The R-Squared statistics seem quite low (a value close to 1 is optimal); while the Standard Error numbers are quite high (a value close to 0 is optimal). You expect to be able to obtain better results, so you continue. Reforecast If you look closely at the actual data, it shows that the points are rather widely dispersed around the forecast and that two days have very low utilizations. An ideal forecast would show very little variation between the actual data points and the forecast. These two days--about May 28th and July 4th--are U.S. holidays that, in 1988, did not fall on a weekend. This may be causing some of the error in the forecast. Return to the first steps in the forecasting process. Forecast Selections * Points Every. You can try to eliminate some of this variability by summarizing the data to the week (Points Every Week instead of Points Every Day), thus averaging these very low days with the other days in the week. * Dates. Perhaps more importantly, you can use only May 2nd through June 30th--a period of steady growth--to calculate the forecast. You would like to see how much growth you could expect if adequate resource is available. You know from the previous graphs that the workload growth was restricted by the lack of CPU resource. * X-Axis. Since the data spans only 2 months, choose an X-Axis of 6 months. Resulting Graphs Run the model with a weekly summary and use only May and June to calculate the forecast. The following figures show the new graphs:
[]
[]
[]
Analysis Reviewing the statistics (Stats report) from these forecasts, you find the following: Table 5-2. Statistics | Standard Error | R-Squared | T-Probability | | | (slope/intercept) | | | Global | 6.77 | 0.80 | 100/99.7 | | | Session | 1.26 | 0.84 | 99.9/99.9 | | | Job | 2.46 | 0.66 | 100/98.6 | | | These values are far superior to the daily forecast and still provide enough detail for this particular study. On these graphs you notice that if the forecast became reality, the following would occur: * Global CPU Utilization. Global CPU Utilization would reach 100 percent by July. * Session CPU Utilization. Session CPU Utilization would grow more slowly, but would rise from 8 percent to 30 percent by the end of October. * Job CPU Utilization. Job CPU Utilization would grow to over 50 percent by the end of October--up from 23 percent in May. For a longer forecast, use 1 Year to see the end of the values. A Final Note Using a higher level summary may not always be effective if too little data exists to generate a good forecast. In this case, because you have 8 weeks of data on which to base the forecast, using the higher level summary worked quite well. In other cases, there may not be enough weeks after the summary, or the weekly summaries may be as dispersed as the daily summaries. By summarizing by the week, you also lose the high and lows that are caused by Day of the Week seasonality.


MPE/iX 5.0 Documentation