GVTS: Global Virtual-time Fair Scheduler for Linux
GVTS(Global Virtual-time Fair Scheduler) is a Linux scheduler to support strict proportional fairness on many core systems, developed by Changdae Kim.
The current CFS uses the virtual-time based proportional fair scheduling on a single core, but uses a load balancing mechanism for multi-core systems. This restricts the proportional fair scheduling support when the load cannot be evenly distributed on CPUs.
GVTS extends the virtual-time based proportional fair scheduling on multi-cores with optimizations to reduce thread migration overheads.
It shows better fairness than CFS and shows comparable performance with CFS.
For the details as well as the fairness and performance results, refer to our paper.
"GVTS: Global Virtual Time Fair Scheduling to Support Strict Fairness on Many Cores" IEEE TPDS 2018 (preprint) (OpenAcess PDF)
Source Code: http://www.github.com/cdkimcode/gvts
Contact: cdkim [_a_t_] calab.kaist.ac.kr
How to use: GVTS is implemented on Linux 4.6.4. Download the source code from github, and then, compile and install as a normal Linux.