Pradyumna Kaushik
a158f4a341
removed rankedDetermineCap(...) as it was not needed. This algorithm has been integrated into proactiveclusterwidecappingranked.go
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
3f90ccfe74
Sycnrhonized operations that change the value of the cluster wide cap. Added cleverRecap(...) that determines the recap value of the cluster at a much finer level, taking into account the average load on each node in the cluster. Bug fix in cap.go -- closed the session once capping had been done. This prevented from running out of file descriptors.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
e562df0f5c
Formatted the code
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
7522cf9879
formatted the code
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
4cc1dd8e63
Kept track of totalPower per node. The watts resource for the first offer corresponds to the total power per node. Removed tasks, that had all their instances scheduled, from the list of tasks to schedule. Also, calling recap(...) every time a task completes to determine the new cluster wide cap."
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
7a69aff8d7
The computation of the cluster wide cap now considers total power per node rather than the available power per node. Also, added function recap(...) that is called to compute the cluster wide cap once a task completes. This value is used to change the cluster wide cap once a task completes."
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
a1c8319b81
changed extrema to non-extrema. This was done so that proactive cluster wide capping scheme doesn't conflict with the extrema capping scheme.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
79a5dca76b
Added another log message to log the name of the file to which the pcplogs are getting written to.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
a9f7ca5c91
Made a check to see whether cluster wide capping has started and if not then starting the go routine that performs the cluster wide capping at regular intervals.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
8a6ad00e21
fixed an error
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
c44088f48b
fixed a an error.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
2382b66e29
commented out the constant Clusterwide_cap_interval and its setter function. Instead hardcoding this in proactiveclusterwidecappingfcfs.go
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
04864ca174
No change made.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
46afab1be0
Removed these files and integrated them with electron
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
0d6b714e1d
Utility data structures and functions.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
8d032f9547
Proactive cluster wide first come first server scheduler. This schedules tasks based on the fcfs cluster wide capping policy defined in proactiveclusterwidecappers.go
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
d8710385be
Proactive cluster wide capper that defines two types of schedulers. First fit scheduling, that uses running average of task.Watts to calculate the cluster wide cap, and Ranked based cluster wide capper that ranks the tasks (sorts) based on the watts required and then performs fcfs in the sorted order.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
10824a8520
Defined constants that help in scheduling of tasks.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
c578f9904d
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
6c3f48e324
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
42a15ec854
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
df553193fd
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
a35e43da51
scheduler is now an instance of ProactiveClusterwideCapFCFS
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
383f088b6a
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
aa84b10a58
Added TaskID as a field. Added a function UpdateHost() to update the host on which the task runs. Added a setter for TaskID. Added a comparator called Compare() that compares to instances of Task
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
5bad32e15b
changed the .go files heading in readme
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
5e96fc6158
fixed an error in the readme
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
0e8db53dee
added description of the .go files.
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
172d49df7a
fixed an error in the readme.md
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
4761de1399
fixed an error in the readme file
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
91d0c6f341
Modified readme to include commands to build and run the program and also added documentation to mention what main.go contains
2016-12-22 22:58:59 -05:00
Pradyumna Kaushik
215026bd19
Added proactive dynamic capping (FCFS and Rank based). Also added a primitive readme file.
2016-12-22 22:58:59 -05:00
Renan DelValle
d2fc72885d
Go FMT run on entire project
2016-12-22 22:58:59 -05:00
Renan DelValle
fa0cd43a5e
Minor renaming of receivers in some schedulers
2016-12-22 22:58:59 -05:00
Renan DelValle
bf9a5a6005
Finished integrating dynamic capping policy that uses a high and a low threshold to start capping and uncapping node via an ssh commands that triggers a python script. Commit has sensitive data, scrub before releasing to public.
2016-12-22 22:58:59 -05:00
Renan DelValle
f7e38285a4
rapl capping via ssh command in rapl package
2016-12-22 22:58:59 -05:00
Renan DelValle
fbc05a42df
Initial version of command which will cap system
2016-12-22 22:58:59 -05:00
Renan DelValle
7d57957524
Averages are calculated correctly, PCP is able to determine a victim to be capped
2016-12-22 22:58:59 -05:00
Renan DelValle
046faac4b2
Binpacking algorithm based on 3 dimensions using a list of tasks sorted by watts
2016-12-22 22:58:58 -05:00
Renan DelValle
f349da4633
Sorting based on watts value added. bin packing based on watts is almost complete.
2016-12-22 22:58:58 -05:00
Renan DelValle
cfbad349e1
Adding First Fit Watts Only
2016-12-22 22:58:58 -05:00
Renan DelValle
fce62981da
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:58:58 -05:00
Renan DelValle
87892ba13b
Adding some fields
2016-12-22 22:58:58 -05:00
Renan DelValle
0623ceace0
Temporary blank struct for metrics
2016-12-22 22:58:58 -05:00
Renan DelValle
6a406cad69
SIGINT is now captured. Linux/MacOS shutdown for pcpdumptext child
...
processes added to clean up after we finish running. Made all tasks
run on bridged network mode so that benchmarks that heavily utilize
network are protected from eachother. I.e: Tradebeans, tradesoap
2016-12-22 22:58:58 -05:00
Renan DelValle
086b06256d
Added Error state. Fixed bug with tasks returning error because 0.0 watts was requested as a resource. Changed name to be more readable by eliminating electron. PCP logs can now have a prefix.
2016-12-22 22:58:58 -05:00
Renan DelValle
6878bf55ec
Added the ability to prefix a pcplog
2016-12-22 22:58:58 -05:00
Renan DelValle
9fab9d3260
Adding shorthands
2016-12-22 22:58:58 -05:00
Renan DelValle
dd7a42f582
Added ability to tie benchmark to single node. Uses offer hostname for this, maybe a better soluition would be to look at offer attributes. Added shorthand for workloads flag -w
2016-12-22 22:58:58 -05:00
Renan DelValle
e0b1fc22e2
More documentation
2016-12-22 22:58:58 -05:00