Efficient and Scalable Multiprocessor Fair Scheduling Using Distributed Weighted Round-Robin

被引:69
作者
Li, Tong [1 ]
Baumberger, Dan [1 ]
Hahn, Scott [1 ]
机构
[1] Intel Corp, Hillsboro, OR 97124 USA
关键词
Algorithms; Design; Experimentation; Performance; Theory; Fair scheduling; distributed weighted round-robin; multiprocessor; lag;
D O I
10.1145/1594835.1504188
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Fairness is an essential requirement of any operating system scheduler. Unfortunately, existing fair scheduling algorithms are either inaccurate or inefficient and non-scalable for multiprocessors. This problem is becoming increasingly severe as the hardware industry continues to produce larger scale multi-core processors. This paper presents Distributed Weighted Round-Robin (DWRR), a new scheduling algorithm that solves this problem. With distributed thread queues and small additional overhead to the underlying scheduler, DWRR achieves high efficiency and scalability. Besides conventional priorities, DWRR enables users to specify weights to threads and achieve accurate proportional CPU sharing with constant error bounds. DWRR operates in concert with existing scheduler policies targeting other system attributes, such as latency and throughput. As a result, it provides a practical solution for various production OSes. To demonstrate the versatility of DWRR, we have implemented it in Linux kernels 2.6.22.15 and 2.6.24, which represent two vastly different scheduler designs. Our evaluation shows that DWRR achieves accurate proportional fairness and high performance for a diverse set of workloads.
引用
收藏
页码:65 / 74
页数:10
相关论文
共 33 条
  • [1] [Anonymous], P S COMM ARCH PROT S
  • [2] Baruah SK, 1996, ALGORITHMICA, V15, P600, DOI 10.1007/BF01940883
  • [3] Fair on-line scheduling of a dynamic set of tasks on a single resource
    Baruah, SK
    Gehrk, JE
    Plaxton, CG
    Stoica, I
    AbdelWahab, H
    Jeffay, K
    [J]. INFORMATION PROCESSING LETTERS, 1997, 64 (01) : 43 - 51
  • [4] Bennett JCR, 1996, IEEE INFOCOM SER, P120, DOI 10.1109/INFCOM.1996.497885
  • [5] BLANQUER JM, 2001, P ACM SIGCOMM SAN DI, P189
  • [6] Bruno J, 1998, PROCEEDINGS OF THE USENIX 1998 ANNUAL TECHNICAL CONFERENCE, P235
  • [7] Caprita B, 2005, USENIX ASSOCIATION PROCEEDINGS OF THE GENERAL TRACK: 2005 UNENIX ANNUAL TECHNICAL CONFERENCE, P337
  • [8] Caprita Bogdan, 2006, PODC 06, P72, DOI [10.1145/1146381.1146396, DOI 10.1145/1146381.1146396]
  • [9] Chandra A, 2000, USENIX ASSOCIATION PROCEEDINGS OF THE FOURTH SYMPOSIUM ON OPERATING SYSTEMS DESIGN AND IMPLEMENTATION, P45
  • [10] Hierarchical scheduling for symmetric multiprocessors
    Chandra, Abhishek
    Shenoy, Prashant
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2008, 19 (03) : 418 - 431