Elektron is a lightweight, power-aware, pluggable Mesos framework that behaves as a playground to experiment with different scheduling policies to schedule ad-hoc jobs in docker containers.
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.
Find a file
2016-12-22 22:58:59 -05:00
constants 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
def fixed a an error. 2016-12-22 22:58:59 -05:00
pcp 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
rapl Go FMT run on entire project 2016-12-22 22:58:59 -05:00
schedulers 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
utilities Utility data structures and functions. 2016-12-22 22:58:59 -05:00
config basic configuration for pcp 2016-12-22 22:58:58 -05:00
README.md No change made. 2016-12-22 22:58:59 -05:00
scheduler.go 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
workload_1.json Electron now launches a series of benchmarks and then shuts down when everything has been sucessfully scheduled 2016-12-22 22:58:58 -05:00

Electron: A power budget manager

To Do:

Requires Performance-Copilot tool pmdumptext to be installed on the machine on which electron is launched for logging to work

How to run:

./electron -workload <workload.json> -ignoreWatts <true or false>

Workload schema:

[
   {
      "name": "minife",
      "cpu": 3.0,
      "ram": 4096,
      "watts": 50,
      "image": "gouravr/minife:v5",
      "cmd": "cd src && mpirun -np 1 miniFE.x -nx 100 -ny 100 -nz 100",
      "inst": 9
   },
   {
      "name": "dgemm",
      "cpu": 3.0,
      "ram": 4096,
      "watts": 50,
      "image": "gouravr/dgemm:v2",
      "cmd": "/./mt-dgemm 1024",
      "inst": 9
   }
]