1. Field of the Invention
This invention relates to the field of data processing systems. More particularly, this invention relates to the setting of performance controlling parameter values in data processing systems.
2. Description of the Prior Art
Some modern data processors offer the functionality of allowing the processor to be set to one of a number of different performance levels at a given time, depending on the requirements of the program application(s). Such processors take advantage of the fact that reducing the clock frequency and the corresponding operating voltage of the processor can potentially yield a quadratic decrease in energy consumption. However, processor performance reduction is only acceptable if it does not adversely impact performance as perceived by the user. In image processing systems, such as 3D graphics processing systems, the graphics processor will typically be run at full speed and as a consequence the frame rate will vary in accordance with the complexity of the image frame being processed. To take advantage of different processor performance levels it is necessary to be able to predict the lowest clock level that enables a desired frame rate to be maintained.
It is known to predict the amount of data processing required to perform a data processing operation on a current data block of an input data stream using information on the amount of data processing actually performed on one or more previously processed data blocks. It is desirable that the prediction function should be “damped” to avoid sudden changes in the amount of data processing work for a given block unduly influencing the predicted performance level for future data blocks. For this reason the prediction is likely to be based on a weighted average of the data processing work performed on the preceding four or five image fields/frames. A problem with such known prediction systems is that when there is a sudden change in the complexity at a frame boundary in an image sequence, for example, when a scene change occurs, the predicted processor level may significantly deviate from the level actually required to perform the processing work required to render that image within the required timescale. Accordingly, there is a need for a system for controlling a performance parameter such as a processor operating frequency that is more responsive to sudden changes in the processing work required to perform a processing operation on successive data blocks.