-
Notifications
You must be signed in to change notification settings - Fork 0
Home
StallGov (formerly called memutil) is a Linux CpuFreq Governor that makes dynamic voltage scaling decisions based on hardware performance counters. This will allow it to react to the memory access patterns of the current CPU processes, so that it can reduce clock frequency, should the CPU be stalled by memory.
See this page
It is based on hardware performance counters to determine memory-boundness of the currently active processes. Therefore it is probably best if you familiarize yourself with the different hardware performance counters we measured. The different Hardware-Performance counter measurements can be found [here for Intel](Counters Intel) and [here for AMD](Counters AMD)
The resulting heuristics in use in StallGov, as well as discarded ones are explained on the [Heuristics page](Memutil Heuristics).
StallGov's general architecture is then explained [here](Memutil Architecture).
We have evaluated StallGov on a set of workloads. The results of this evaluation can be found on the Evaluation page
Our CpuFreq governor is implemented as a kernel module.
To see how to compile & use the kernel module, see the README.
StallGov will need adjustment for your specific machine for best performance. The Porting page includes instructions of how to tweak the Heuristic parameters.
See [this page](Future work).
- [Background & Related Work](Background & Related Work)
- memutil Development
- Measured Counters
- [Intel](Counters Intel)
- [AMD](Counters AMD)
- Heuristics
- Architecture
- Measured Counters
- Evaluation
- Porting memutil
- [Future Work](Future Work)