This repository has been archived on 2024-04-10. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
elektron/schedulers
2017-01-14 20:04:37 -05:00
..
base.go Minor comments and style changes 2017-01-06 18:53:03 -05:00
binpackedpistoncapping.go retrofitted schedulers to use base.go and to log the scheduling trace. Changed the name of piston capper to binpackedpistoncapping and also changed the variable names inside binpackedpistoncapping.go to indicate the name of the scheduler. 2017-01-14 19:44:50 -05:00
binpacksortedwatts.go formatted the files 2017-01-14 20:04:37 -05:00
bpMaxMin.go formatted the files 2017-01-14 20:04:37 -05:00
bpMaxMinPistonCapping.go Bug fix to start capping when the first task fits an offer. 2017-01-08 18:59:51 -08:00
bpMaxMinProacCC.go formatted the files 2017-01-14 20:04:37 -05:00
bpswClassMapWatts.go retrofitted schedulers to use base.go and to log the scheduling trace. Changed the name of piston capper to binpackedpistoncapping and also changed the variable names inside binpackedpistoncapping.go to indicate the name of the scheduler. 2017-01-14 19:44:50 -05:00
bpswClassMapWattsPistonCapping.go retrofitted schedulers to use base.go and to log the scheduling trace. Changed the name of piston capper to binpackedpistoncapping and also changed the variable names inside binpackedpistoncapping.go to indicate the name of the scheduler. 2017-01-14 19:44:50 -05:00
bpswClassMapWattsProacCC.go formatted the files 2017-01-14 20:04:37 -05:00
firstfit.go formatted the files 2017-01-14 20:04:37 -05:00
firstfitsortedwatts.go formatted the files 2017-01-14 20:04:37 -05:00
firstfitSortedWattsClassMapWatts.go retrofitted schedulers to use base.go and to log the scheduling trace. Changed the name of piston capper to binpackedpistoncapping and also changed the variable names inside binpackedpistoncapping.go to indicate the name of the scheduler. 2017-01-14 19:44:50 -05:00
firstfitSortedWattsClassMapWattsProacCC.go retrofitted schedulers to use base.go and to log the scheduling trace. Changed the name of piston capper to binpackedpistoncapping and also changed the variable names inside binpackedpistoncapping.go to indicate the name of the scheduler. 2017-01-14 19:44:50 -05:00
firstfitwattsonly.go formatted the files 2017-01-14 20:04:37 -05:00
helpers.go Moved schedulers from the main programs to schedulers package. Can now choose different scheduelrs to use. Work on code sharing between schedulers remains to be done. 2016-12-22 22:59:02 -05:00
proactiveclusterwidecappingfcfs.go formatted the files 2017-01-14 20:04:37 -05:00
proactiveclusterwidecappingranked.go formatted the files 2017-01-14 20:04:37 -05:00
README.md Added TODO to move the cappers to pcp/ and also to include the change made to cap only when necessary. 2017-01-08 19:09:58 -08:00
states.go Moved schedulers from the main programs to schedulers package. Can now choose different scheduelrs to use. Work on code sharing between schedulers remains to be done. 2016-12-22 22:59:02 -05:00

Electron: Scheduling Algorithms

To Do:

  • Design changes -- Possible to have one scheduler with different scheduling schemes?
  • Fix the race condition on 'tasksRunning' in proactiveclusterwidecappingfcfs.go and proactiveclusterwidecappingranked.go
  • Separate the capping strategies from the scheduling algorithms and make it possible to use any capping strategy with any scheduler.
  • Make newTask(...) variadic where the newTaskClass argument can either be given or not. If not give, then pick task.Watts as the watts attribute, else pick task.ClassToWatts[newTaskClass].
  • Retrofit pcp/proactiveclusterwidecappers.go to include the power capping go routines and to cap only when necessary.

Scheduling Algorithms:

  • First Fit
  • First Fit with sorted watts
  • Bin-packing with sorted watts
  • FCFS Proactive Cluster-wide Capping
  • Ranked Proactive Cluster-wide Capping
  • Piston Capping -- Works when scheduler is run with WAR