DocumentCode
2483869
Title
Handling OS jitter on multicore multithreaded systems
Author
De, Pradipta ; Mann, V. ; Mittaly, U.
Author_Institution
IBM India Res. Lab., New Delhi, India
fYear
2009
fDate
23-29 May 2009
Firstpage
1
Lastpage
12
Abstract
Various studies have shown that OS jitter can degrade parallel program performance considerably at large processor counts. Most sources of system jitter fall broadly into 5 categories - user space processes, kernel threads, interrupts, SMT interference and hypervisor activity. Solutions to OS jitter typically consist of a combination of techniques such as synchronization of jitter across nodes (co-scheduling or gang scheduling) and use of microkernels. Both techniques present several drawbacks. Multicore and Multithreaded systems present opportunities to handle OS jitter. They have multiple cores and threads, some of which can be used for handling OS jitter, while the application threads run on remaining cores and threads. However, they are also prone to risks such as inter-thread cache interference and process migration. In this paper, we present a holistic approach that aims to reduce jitter caused by various sources of jitter by utilizing the additional threads or cores in a system. Our approach handles jitter through reduction of kernel threads, intelligent interrupt handling, and switching of hardware SMT thread priorities. This helps in reducing jitter experienced by application threads in the user space, at the kernel level, and at the hardware level. We make use of existing features available in the Linux kernel and Power Architecture as well make enhancements to the Linux kernel. We demonstrate the efficacy of our techniques by reducing jitter on two different platforms and operating system versions. In the first case our approach helps in reducing periodic jitter that improves both average and worst case performance of a simulated parallel application. In the second case our approach helps in reducing infrequent very large jitter that helps the worst case performance of a real parallel application. Our experimental results show up to 30% reduction in slowdown in the average case at 16K OS images and up to 50% reduction in slowdown in the worst case at 8 OS- images using this approach as compared to a baseline configuration.
Keywords
Linux; interrupts; jitter; multi-threading; software reliability; Linux kernel; OS jitter; Power Architecture; SMT interference; hypervisor activity; interrupts; kernel threads; multicore multithreaded systems; parallel program performance; user space processes; Degradation; Hardware; Interference; Jitter; Kernel; Linux; Multicore processing; Surface-mount technology; Virtual machine monitors; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing, 2009. IPDPS 2009. IEEE International Symposium on
Conference_Location
Rome
ISSN
1530-2075
Print_ISBN
978-1-4244-3751-1
Electronic_ISBN
1530-2075
Type
conf
DOI
10.1109/IPDPS.2009.5161046
Filename
5161046
Link To Document