Title
Addressing Fairness in SMT Multicores with a Progress-Aware Scheduler
Abstract
Current SMT (simultaneous multithreading) processors co-schedule jobs on the same core, thus sharing core resources like L1 caches. In SMT multicores, threads also compete among themselves for uncore resources like the LLC (last level cache) and DRAM modules. Per process performance degradation over isolated execution mainly depends on process resource requirements and the resource contention induced by co-runners. Consequently, the running processes progress at different pace. If schedulers are not progress aware, the unpredictable execution time caused by unfairness can introduce undesirable behaviors on the system such as difficulties to keep priority-based scheduling. This work proposes a job scheduler for SMT multicores that provides fairness to the execution of multi programmed workloads. To this end, the scheduler estimates per-process standalone performance by periodically creating low-contention co-schedules. These estimates are used to compute the per process progress. Then, those processes with less progress are prioritized to enhance fairness. Experimental results on a Intel Xeon with six dual-threaded SMT cores show that the proposed scheduler reduces unfairness, on average, by 3× over Linux OS. Moreover, thanks to the tread to core allocation policy, the scheduler slightly improves throughput and turnaround time.
Year
DOI
Venue
2015
10.1109/IPDPS.2015.48
International Parallel & Distributed Processing Symposium
Keywords
Field
DocType
scheduling, fairness, SMT, multicore, performance estimation
Cache,Scheduling (computing),Computer science,Parallel computing,Uncore,Thread (computing),Simultaneous multithreading,Job scheduler,Xeon,Multi-core processor,Operating system
Conference
ISSN
Citations 
PageRank 
1530-2075
7
0.43
References 
Authors
18
4
Name
Order
Citations
PageRank
Josué Feliu1134.58
Julio Sahuquillo242053.71
Salvador Petit315327.28
José Duato43481294.85