Using Lock Servers to Scale Real-Time Locking Protocols: Chasing Ever Increasing Core Counts
University of North Carolina at Chapel Hill Chapel Hill United States
Pagination or Media Count:
During the past decade, parallelism-related issues have been at the forefront of real-time systems research due to the advent of multicore technologies. In the coming years, such issues will loom ever larger due to increasing core counts. Having more cores means a greater potential exists for platform capacity loss when the available parallelism cannot be fully exploited. In this paper, such capacity loss is considered in the context of real-time locking protocols. In this context, lock nesting becomes a key concern as it can result in transitive blocking chains that force tasks to execute sequentially unnecessarily. Such chains can be quite long on a larger machine. Contention-sensitive real-time locking protocols have been proposed as a means of breaking transitive blocking chains, but such protocols tend to have high overhead due to more complicated lockunlock logic. To ease such overhead, the usage of lock servers is considered herein. In particular, four specific lock-server paradigms are proposed and many nuances concerning their deployment are explored. Experiments are presented that show that, by executing cache hot, lock servers can enable reductions in lockunlock overhead of up to 86 . Such reductions make contention-sensitive protocols a viable approach in practice.
- Computer Systems