Name: dmclock
Owner: Ceph
Description: Code that implements the dmclock distributed quality of service algorithm. See "mClock: Handling Throughput Variability for Hypervisor IO Scheduling" by Gulati, Merchant, and Varman.
Created: 2016-03-01 16:18:09.0
Updated: 2018-05-22 02:52:25.0
Pushed: 2018-05-21 21:31:26.0
Size: 619
Language: C++
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
This repository contains C++ 11 code that implements the dmclock distributed quality of service algorithm. See mClock: Handling Throughput Variability for Hypervisor IO Scheduling by Gulati, Merchant, and Varman for a description of the algorithm.
When running cmake, set the build type with either:
-DCMAKE_BUILD_TYPE=Debug
-DCMAKE_BUILD_TYPE=Release
To turn on profiling, run cmake with an additional:
-DPROFILE=yes
The make
command builds a library libdmclock.a. That plus the header
files in the src directory allow one to use the implementation in
their code.
The make dmclock-tests
command builds unit tests.
The make dmclock-sims
command builds two simulations – dmc_sim
and ssched_sim – which incorporate, respectively, the dmclock
priority queue or a very simple scheduler for comparison. Other
priority queue implementations could be added in the future.
To be written….