DocumentCode :
1374579
Title :
The Complexity of Optimal Job Co-Scheduling on Chip Multiprocessors and Heuristics-Based Solutions
Author :
Jiang, Yunlian ; Tian, Kai ; Shen, Xipeng ; Zhang, Jinghe ; Chen, Jie ; Tripathi, Rahul
Author_Institution :
Dept. of Comput. Sci., Coll. of William & Mary, Williamsburg, VA, USA
Volume :
22
Issue :
7
fYear :
2011
fDate :
7/1/2011 12:00:00 AM
Firstpage :
1192
Lastpage :
1205
Abstract :
In Chip Multiprocessors (CMPs) architecture, it is common that multiple cores share some on-chip cache. The sharing may cause cache thrashing and contention among co-running jobs. Job co-scheduling is an approach to tackling the problem by assigning jobs to cores appropriately so that the contention and consequent performance degradations are minimized. Job co-scheduling includes two tasks: the estimation of co-run performance, and the determination of suitable co-schedules. Most existing studies in job co-scheduling have concentrated on the first task but relies on simple techniques (e.g., trying different schedules) for the second. This paper presents a systematic exploration to the second task. The paper uncovers the computational complexity of the determination of optimal job co-schedules, proving its NP-completeness. It introduces a set of algorithms, based on graph theory and Integer/Linear Programming, for computing optimal co-schedules or their lower bounds in scenarios with or without job migrations. For complex cases, it empirically demonstrates the feasibility for approximating the optimal effectively by proposing several heuristics-based algorithms. These discoveries may facilitate the assessment of job co-schedulers by providing necessary baselines, as well as shed insights to the development of co-scheduling algorithms in practical systems.
Keywords :
cache storage; computational complexity; graph theory; integer programming; linear programming; multiprocessing systems; scheduling; NP-completeness; cache thrashing; chip multiprocessors architecture; computational complexity; graph theory; heuristics-based solutions; integer programming; linear programming; on-chip cache; optimal job co-scheduling; Algorithm design and analysis; Approximation algorithms; Degradation; IP networks; Optimal scheduling; Partitioning algorithms; Schedules; CMP scheduling; Co-scheduling; cache contention; integer programming.; perfect matching; shared cache;
fLanguage :
English
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on
Publisher :
ieee
ISSN :
1045-9219
Type :
jour
DOI :
10.1109/TPDS.2010.193
Filename :
5629329
Link To Document :
بازگشت