This is a simulator to test 6 different algorithms.
The idea is for a hardware priority value that decides how much cache space is allocated to a thread.
6 algorithm choices are provided:
- Static 25% each (Control, no priority)
- Need-based (Control, like dynamic but no priority)
- Basic Priority (First method, high priority takes as much as they want)
- Static Priority (Second method, high priority gets higher percentage)
- Modified Static Priority (Unused share of high priority can be used by other processes)
- Dynamic Priority (Final method: considers previous share, priority, and miss rate to calculate new share)
The important code resides in Form1.cs
One has been provided, but another could be generated:
-
Open the program
-
Click "Generate Inputs", another form will open
-
Write desired file name and number to generate
Whatever the desired .json is, put it in the filepath field in the main program
Further simulations will append to the text box so multiple results can be viewed at once.