There is no real, standardised benchmark for comparing different scheduling algorithms. Each algorithm has their own advantages and drawbacks, and an algorithm may have a bias towards one category of processes over others. In order to properly judge which algorithm is best suited for use in a particular case, it is important for us to consider the following criteria: CPU utilisation, throughput, turnaround time, waiting time, and response time.

CPU Utilisation - The percentage of time that the CPU is busy.

Throughput - The number of processes that have completed per unit of time.

Turnaround Time - The amount of time taken for a process to run from submission to completion.

Waiting Time - The sum of the periods of time which the process spends waiting in the ready queue.

Response Time - The time taken for a process to start responding, since submission.

As we mentioned above, there is no fixed method for the evaluation and comparison of scheduling algorithms. In general, in order to select a scheduling algorithm, we weigh the relative importance of each criteria (above) to the output we desire. Thus, in order to select an algorithm, our testing may include several measures, for example:

- minimisation of the maximum waiting time.
- maximising throughput but ensuring that maximum response time is x seconds.

As you can see, defining our parameters for evaluation is not a trivial task!