A Comparison of the M-PCP, D-PCP, and FMLP on LITMUSRT

  • Authors:
  • Björn B. Brandenburg;James H. Anderson

  • Affiliations:
  • Dept. of Computer Science, The University of North Carolina at Chapel Hill, Chapel Hill, USA NC 27599-3175;Dept. of Computer Science, The University of North Carolina at Chapel Hill, Chapel Hill, USA NC 27599-3175

  • Venue:
  • OPODIS '08 Proceedings of the 12th International Conference on Principles of Distributed Systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a performance comparison of three multiprocessor real-time locking protocols: the multiprocessor priority ceiling protocol (M-PCP), the distributed priority ceiling protocol (D-PCP), and the flexible multiprocessor locking protocol (FMLP). In the FMLP, blocking is implemented via either suspending or spinning, while in the M-PCP and D-PCP, all blocking is by suspending. The presented comparison was conducted using a UNC-produced Linux extension called LITMUSRT. In this comparison, schedulability experiments were conducted in which runtime overheads as measured on LITMUSRT were used. In these experiments, the spin-based FMLP variant always exhibited the best performance, and the M-PCP and D-PCP almost always exhibited poor performance. These results call into question the practical viability of the M-PCP and D-PCP, which have been the de-facto standard for real-time multiprocessor locking for the last 20 years.