Pradyumna Kaushik
3551de20da
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:59:02 -05:00
Pradyumna Kaushik
5dc3baab55
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:59:02 -05:00
Pradyumna Kaushik
bbb83f4197
Added another log message to log the name of the file to which the pcplogs are getting written to.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
ed25adcc6c
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:59:02 -05:00
Pradyumna Kaushik
7b19cfb4fc
fixed an error
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
0f8a2d3f0c
fixed a an error.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
58289ed90f
commented out the constant Clusterwide_cap_interval and its setter function. Instead hardcoding this in proactiveclusterwidecappingfcfs.go
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
c16e33d99d
No change made.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
37b918d494
Removed these files and integrated them with electron
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
04d6d4b631
Utility data structures and functions.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
8e0ed6a014
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:59:02 -05:00
Pradyumna Kaushik
c728b1f733
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:59:02 -05:00
Pradyumna Kaushik
d3e4914f58
Defined constants that help in scheduling of tasks.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
31bbacf149
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
c1fa0b1a6e
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
d0e37811d6
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
bfbca705c8
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
6d0a3f8a90
scheduler is now an instance of ProactiveClusterwideCapFCFS
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
522b606165
changed bingcloud to sunybingcloud in the import statements.
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
0c53bb386f
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:59:02 -05:00
Pradyumna Kaushik
e27912f99e
fixed an error in the readme file
2016-12-22 22:59:02 -05:00
Pradyumna Kaushik
fb2580bcad
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:59:02 -05:00
Pradyumna Kaushik
353439464e
Added proactive dynamic capping (FCFS and Rank based). Also added a primitive readme file.
2016-12-22 22:59:02 -05:00
Renan DelValle
86790133e1
Go FMT run on entire project
2016-12-22 22:59:02 -05:00
Renan DelValle
7c7d80b557
Minor renaming of receivers in some schedulers
2016-12-22 22:59:02 -05:00
Renan DelValle
cf3d83e712
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:59:02 -05:00
Renan DelValle
1386049d30
rapl capping via ssh command in rapl package
2016-12-22 22:59:02 -05:00
Renan DelValle
254528f4f1
Initial version of command which will cap system
2016-12-22 22:59:02 -05:00
Renan DelValle
e568dcc508
Averages are calculated correctly, PCP is able to determine a victim to be capped
2016-12-22 22:59:02 -05:00
Renan DelValle
39aa3cacc4
Binpacking algorithm based on 3 dimensions using a list of tasks sorted by watts
2016-12-22 22:59:02 -05:00
Renan DelValle
617fb8ac0f
Sorting based on watts value added. bin packing based on watts is almost complete.
2016-12-22 22:59:02 -05:00
Renan DelValle
97002ea353
Adding First Fit Watts Only
2016-12-22 22:59:02 -05:00
Renan DelValle
c2e2b7e554
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
Renan DelValle
407c350d3c
Adding some fields
2016-12-22 22:59:02 -05:00
Renan DelValle
5e9db05d4c
Temporary blank struct for metrics
2016-12-22 22:59:02 -05:00
Renan DelValle
8f9b29cbcb
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:59:01 -05:00
Renan DelValle
5dd64f1e16
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:59:01 -05:00
Renan DelValle
52d012a7ee
Added the ability to prefix a pcplog
2016-12-22 22:59:01 -05:00
Renan DelValle
23d7014cfe
Adding shorthands
2016-12-22 22:59:01 -05:00
Renan DelValle
c4ea0321c1
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:59:01 -05:00
Renan DelValle
7666167d87
More documentation
2016-12-22 22:59:01 -05:00
Renan DelValle
3b3e64ec47
Adding documentation for ignoreWatts
2016-12-22 22:59:01 -05:00
Renan DelValle
0503e2ab56
Added option to run without taking watts
2016-12-22 22:59:01 -05:00
Renan DelValle
cd430eede0
PCP is now controlled by main scheduler. It will start recording upon the acceptance of the very first offer. pcp is now it's own package. README has been updated with instructions on how to create workloads and running instructions.
2016-12-22 22:59:01 -05:00
Renan DelValle
3801fbd7d6
Detection of co-scheduled benchmarks is complete
2016-12-22 22:59:01 -05:00
Renan DelValle
4e2a1d99fd
Tied metric columns to values, next step will be determining how to store them and retrieve them
2016-12-22 22:59:01 -05:00
Renan DelValle
58c6bfe7a8
PCP code is now able to deal with receiving information asynchronously from pmdumptext
2016-12-22 22:59:01 -05:00
Renan DelValle
992455048a
Fixed deadlock issue while running a large number of benchmarks. Changed names of tasks to indicate what they are running. Added name to task schema to append it to the name more easily.
2016-12-22 22:59:01 -05:00
Renan DelValle
512e0e7b5c
Bug fix for running multiple different benchmarks. Loop did not exit upon being able to take an offer.
2016-12-22 22:59:01 -05:00
Renan DelValle
6e2a627038
Electron now launches a series of benchmarks and then shuts down when everything has been sucessfully scheduled
2016-12-22 22:59:01 -05:00