Avoiding unbounded priority inversion in barrier protocols using gang priority management
Author(s) -
Harald Röck,
Joshua Auerbach,
Christoph Kirsch,
David F. Bacon
Publication year - 2009
Publication title -
citeseer x (the pennsylvania state university)
Language(s) - English
Resource type - Conference proceedings
DOI - 10.1145/1620405.1620416
Subject(s) - computer science , priority inversion , garbage collection , java , software portability , priority inheritance , virtual machine , operating system , exploit , kernel (algebra) , distributed computing , protocol (science) , priority ceiling protocol , embedded system , garbage , dynamic priority scheduling , computer security , programming language , rate monotonic scheduling , round robin scheduling , medicine , schedule , alternative medicine , mathematics , pathology , combinatorics
Large real-time software systems such as real-time Java virtual machines often use barrier protocols, which work for a dynamically varying number of threads without using centralized locking. Such barrier protocols, however, still suffer from priority inversion similar to centralized locking. We introduce gang priority management as a generic solution for avoiding unbounded priority inversion in barrier protocols. Our approach is either kernel-assisted (for efficiency) or library-based (for portability) but involves cooperation from the protocol designer (for generality). We implemented gang priority management in the Linux kernel and rewrote the garbage collection safe-point barrier protocol in IBM's WebSphere Real Time Java Virtual Machine to exploit it. We run experiments on an 8-way SMP machine in a multi-user and multi-process environment, and show that by avoiding unbounded priority inversion, the maximum latency to reach a barrier point is reduced by a factor of 5.3 and the application jitter is reduced by a factor of 1.5.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom