CPU Scheduling Simulator 0.9 RC released!
Download CPUSS 0.9!
In this release I have fixed a few things, as well as added a few new minor features to make analysis of scheduling algorithms a lot quicker, some of which include:
- CPU Utilization %
- Turnaround times for each process
- Response times for each process
- Throughout time windows
I have also included a tidy binary distribution as well, so if you can't be bothered looking at the source code and you just want to take a few bits of CPUSS out for a spin then simply download that. There is also a brief users guide in there as well which will help you get on your feet.
Using CPUSS Report Generator (CPUSSRG)
This tool is very simple to use, but of course I would say that! What this tool allows you to do is invoke a scheduling algorithm against some defined processes n times and then the data is aggregated into a HTML report for viewing.
Step 1: Define the simulation
This is going to be a really trivial guide as using the tool is trivial, but anyway's here we go...
What has that just done? It's used a process load containing processes of three various groups, each of which has varying properties that make it valid in that group using an algorithm called ShortestJobFirstExpert (first integer represents ready queue poll time, second is the % threshold of large processes in the ready queue at any one time - if this is breached then the expert rules will kick in to elevate the processes priorities) and has been repeated 30 times to gather a more distributed value range.
Step 2: Analyse
I won't go through much of this, rather screen shots will suffice - if you want to dig more into the data then be my guest - run a simulation for yourself!
The omission in the report tool is that of the throughput, but don't worry this feature will in the 1.0 release (it's actually in the 0.9 release but I'm thinking about the best way to show the data).
Download CPUSS 0.9!
EDIT: One thing I didn't mention, if you want to create your own algorithms and use them with CPUSSRG then just make sure you implement IStrategy and then pop the containing assembly in the Plugins folder of the CPUSSRG tool.