ADAPT: A Framework for Coscheduling Multithreaded Programs

被引:15
|
作者
Pusukuri, Kishore Kumar [1 ]
Gupta, Rajiv [1 ]
Bhuyan, Laxmi N. [1 ]
机构
[1] Univ Calif Riverside, Dept Comp Sci, Riverside, CA 92521 USA
基金
美国国家科学基金会;
关键词
Performance; Measurement; Algorithms; Multicore; lock contention; cache miss-rate; fairness; coscheduling; PERFORMANCE; CONTENTION; MANAGEMENT; THREADS;
D O I
10.1145/2400682.2400704
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Since multicore systems offer greater performance via parallelism, future computing is progressing towards use of multicore machines with large number of cores. However, the performance of emerging multithreaded programs often does not scale to fully utilize the available cores. Therefore, simultaneously running multiple multithreaded applications becomes inevitable to fully exploit the computing potential of such machines. However, maximizing the performance and throughput on multicore machines in the presence of multiple multithreaded programs is a challenge for the OS. We have observed that the state-of-the-art contention management algorithms fail to effectively coschedule multithreaded programs on multicore machines. To address the above challenge, we present ADAPT, a scheduling framework that continuously monitors the resource usage of multithreaded programs and adaptively coschedules them such that they interfere with each other's performance as little as possible. In addition, ADAPT selects appropriate memory allocation and scheduling policies according to the workload characteristics. We have implemented ADAPT on a 64-core Supermicro server running Solaris 11 and evaluated it using 26 multithreaded programs including the TATP database application, SPECjbb2005, and programs from Phoenix, PARSEC, and SPEC OMP suites. The experimental results show that ADAPT substantially improves total turnaround time and system utilization relative to the default Solaris 11 scheduler.
引用
收藏
页数:24
相关论文
共 50 条
  • [1] An Efficient and Flexible Deterministic Framework for Multithreaded Programs
    Kai Lu
    Xu Zhou
    Xiao-Ping Wang
    Tom Bergan
    Chen Chen
    [J]. Journal of Computer Science and Technology, 2015, 30 : 42 - 56
  • [2] An Efficient and Flexible Deterministic Framework for Multithreaded Programs
    Lu, Kai
    Zhou, Xu
    Wang, Xiao-Ping
    Bergan, Tom
    Chen, Chen
    [J]. JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2015, 30 (01) : 42 - 56
  • [3] Analysis of multithreaded programs
    Rinard, M
    [J]. STATIC ANALYSIS, PROCEEDINGS, 2001, 2126 : 1 - 19
  • [4] Checkpointing multithreaded programs
    Carothers, Christopher D.
    Szymanski, Boleslaw K.
    [J]. Dr. Dobb's Journal, 2002, 27 (08):
  • [5] Security of multithreaded programs by compilation
    Barthe, Gilles
    Rezk, Tamara
    Russo, Alejandro
    Sabelfeld, Andrei
    [J]. COMPUTER SECURITY - ESORICS 2007, PROCEEDINGS, 2007, 4734 : 2 - +
  • [6] CARET Analysis of Multithreaded Programs
    Huu-Vu Nguyen
    Touili, Tayssir
    [J]. LOGIC-BASED PROGRAM SYNTHESIS AND TRANSFORMATION (LOPSTR 2017), 2018, 10855 : 73 - 90
  • [7] Using the Replicating Effective Programs Framework to Adapt a Heart Health Intervention
    Ramsay, Jessica E.
    Janevic, Mary R.
    Hogan, Cainnear K.
    Edwards, Dominique L.
    Connell, Cathleen M.
    [J]. HEALTH PROMOTION PRACTICE, 2019, 20 (05) : 760 - 769
  • [8] File Descriptors And Multithreaded Programs
    Babkin, Sergey
    [J]. DR DOBBS JOURNAL, 2008, 33 (12): : 42 - 45
  • [9] Modular verification of multithreaded programs
    Flanagan, C
    Freund, SN
    Qadeer, S
    Seshia, SA
    [J]. THEORETICAL COMPUTER SCIENCE, 2005, 338 (1-3) : 153 - 183
  • [10] Taming Deadlocks in Multithreaded Programs
    Cai, Yan
    Chan, W. K.
    Yu, Y. T.
    [J]. 2013 13TH INTERNATIONAL CONFERENCE ON QUALITY SOFTWARE (QSIC), 2013, : 276 - 279