Contention-Aware Scheduler: Unlocking Execution Parallelism in Multithreaded Java']Java Programs

被引:0
作者
Xian, Feng [1 ]
Srisa-an, Witawas [1 ]
Jiang, Hong [1 ]
机构
[1] Univ Nebraska, Dept Comp Sci & Engn, Lincoln, NE 68588 USA
来源
OOPSLA 2008 NASHVILLE, CONFERENCE PROCEEDINGS: MUSIC CITY USA, OOPSLA | 2008年
关键词
Experimentation; Languages; Performance;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In multithreaded programming, locks are frequently used as a mechanism for synchronization. Because today's operating systems do not consider lock usage as a scheduling criterion, scheduling decisions can be unfavorable to multithreaded applications, leading to performance issues such as convoying and heavy lock contention in systems with multiple processors. Previous efforts to address these issues (e.g., transactional memory, lock-free data structure) often treat scheduling decisions as "a fact of life:" and therefore these solutions try to cope with the consequences of undesirable scheduling instead of dealing with the problem directly. In this paper, we introduce Contention-Aware Scheduler (CA-Scheduler), which is designed to support efficient execution of large multithreaded Java applications in multiprocessor systems. Our proposed scheduler employs a scheduling policy that reduces lock contention. As will be shown in this paper, our prototype implementation of the CA-Scheduler in Linux and Sun HotSpot virtual machine only incurs 3.5% runtime overhead, while the overall performance differences, when compared with a system with no contention awareness, range from a degradation of 3% in a small multithreaded benchmark to an improvement of 15% in a large Java application server benchmark.
引用
收藏
页码:163 / 179
页数:17
相关论文
共 36 条
[1]  
AAS J, 2006, UNDERSTANDING LINUX
[2]  
ANDERSON TE, 1991, P 13 ACM S OP SYST P, P95
[3]  
[Anonymous], 1993, P S COMP ARCH ISCA
[4]   Improving virtual machine performance using a cross-run profile repository [J].
Arnold, M ;
Welc, A ;
Rajan, VT .
ACM SIGPLAN NOTICES, 2005, 40 (10) :297-311
[5]  
BACON DF, 1998, P ACM SIGPLAN 98 C P, P258
[6]   FCM - THE FUZZY C-MEANS CLUSTERING-ALGORITHM [J].
BEZDEK, JC ;
EHRLICH, R ;
FULL, W .
COMPUTERS & GEOSCIENCES, 1984, 10 (2-3) :191-203
[7]  
Bishop CM., 1995, Neural networks for pattern recognition
[8]  
Blackburn Stephen M., 2006, P 21 ANN ACM SIGPLAN, DOI DOI 10.1145/1167473.1167488
[9]  
CARLSTROM BD, 2005, OOPSLA 2005 WORKSH S
[10]  
Cohen M, 2006, GECCO 2006: GENETIC AND EVOLUTIONARY COMPUTATION CONFERENCE, VOL 1 AND 2, P1901