International Journal of Parallel Programming
Distributing Hot-Spot Addressing in Large-Scale Multiprocessors
IEEE Transactions on Computers
Two algorithms for barrier synchronization
International Journal of Parallel Programming
Algorithms for scalable synchronization on shared-memory multiprocessors
ACM Transactions on Computer Systems (TOCS)
Synchronization barrier and related tools for shared memory parallel programming
International Journal of Parallel Programming
ACM SIGOPS Operating Systems Review
Proceedings of the seventeenth ACM symposium on Operating systems principles
Experience with processes and monitors in Mesa
Communications of the ACM
Middleware for real-time and embedded systems
Communications of the ACM - Adaptive middleware
The Real-Time Specification for Java
The Real-Time Specification for Java
The Java Language Specification
The Java Language Specification
Real-Time Systems - Special issue on real-time computing in the age of the Web and the Internet
A real-time garbage collector with low overhead and consistent utilization
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Priority Inheritance Protocols: An Approach to Real-Time Synchronization
IEEE Transactions on Computers
Efficient Barriers for Distributed Shared Memory Computers
Proceedings of the 8th International Symposium on Parallel Processing
A proportional share resource allocation algorithm for real-time, time-shared systems
RTSS '96 Proceedings of the 17th IEEE Real-Time Systems Symposium
CORBA in Real-Time Settings: A Problem from the Manufacturing Domain
ISORC '98 Proceedings of the The 1st IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
Dynamic Integrated Scheduling of Hard Real-Time, Soft Real-Time and Non-Real-Time Processes
RTSS '03 Proceedings of the 24th IEEE International Real-Time Systems Symposium
Task Reweighting on Multiprocessors: Efficiency versus Accuracy
IPDPS '05 Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Workshop 2 - Volume 03
Priority inversion in multi processor systems due to protected actions
ACM SIGAda Ada Letters
Eventrons: a safe programming construct for high-frequency hard real-time applications
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
Java takes flight: time-portable real-time programming with exotasks
Proceedings of the 2007 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
ISORC '07 Proceedings of the 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing
Schedulable garbage collection in CLI virtual execution system
Real-Time Systems
Design and implementation of a comprehensive real-time java virtual machine
EMSOFT '07 Proceedings of the 7th ACM & IEEE international conference on Embedded software
Tax-and-spend: democratic scheduling for real-time garbage collection
EMSOFT '08 Proceedings of the 8th ACM international conference on Embedded software
A component framework for java-based real-time embedded systems
Proceedings of the 9th ACM/IFIP/USENIX International Conference on Middleware
RTZen: highly predictable, real-time java middleware for distributed and embedded systems
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
RTZen: highly predictable, real-time java middleware for distributed and embedded systems
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
Priority inversion with fungible resources
ACM SIGAda Ada Letters
Hi-index | 0.00 |
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.