Skip to main content
Log in

Transactional Contention Management as a Non-Clairvoyant Scheduling Problem

  • Published:
Algorithmica Aims and scope Submit manuscript

Abstract

The transactional approach to contention management guarantees consistency by making sure that whenever two transactions have a conflict on a resource, only one of them proceeds. A major challenge in implementing this approach lies in guaranteeing progress, since transactions are often restarted.

Inspired by the paradigm of non-clairvoyant job scheduling, we analyze the performance of a contention manager by comparison with an optimal, clairvoyant contention manager that knows the list of resource accesses that will be performed by each transaction, as well as its release time and duration. The realistic, non-clairvoyant contention manager is evaluated by the competitive ratio between the last completion time (makespan) it provides and the makespan provided by an optimal contention manager.

Assuming that the amount of exclusive accesses to the resources is non-negligible, we present a simple proof that every work conserving contention manager guaranteeing the pending commit property achieves an O(s) competitive ratio, where s is the number of resources. This bound holds for the Greedy contention manager studied by Guerraoui et al. (Proceedings of the 24th Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 258–264, 2005) and is a significant improvement over the O(s 2) bound they prove for the competitive ratio of Greedy. We show that this bound is tight for any deterministic contention manager, and under certain assumptions about the transactions, also for randomized contention managers.

When transactions may fail, we show that a simple adaptation of Greedy has a competitive ratio of at most O(ks), assuming that a transaction may fail at most k times. If a transaction can modify its resource requirements when re-invoked, then any deterministic algorithm has a competitive ratio Ω(ks). For the case of unit length jobs, we give (almost) matching lower and upper bounds.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Borodin, A., El-Yaniv, R.: Online Computation and Competitive Analysis. Cambridge University Press, Cambridge (1998)

    MATH  Google Scholar 

  2. Edmonds, J., Chinn, D.D., Brecht, T., Deng, X.: Non-clairvoyant multiprocessor scheduling of jobs with changing execution characteristics. J. Sched. 6(3), 231–250 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  3. Guerraoui, R., Herlihy, M., Pochon, B.: Toward a theory of transactional contention management. In: Proceedings of the 24th Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 258–264 (2005)

  4. Guerraoui, R., Herlihy, M., Kapałka, M., Pochon, B.: Robust contention management in software transactional memory. In: Synchronization and Concurrency in Object-Oriented Languages (SCOOL). Workshop, in Conjunction with OOPSLA (2005). http://urresearch.rochester.edu/handle/1802/2103

  5. Herlihy, M., Luchangco, V., Moir, M., Scherer III, W.N.: Software transactional memory for dynamic-sized data structures. In: Proceedings of the 22nd Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 92–101 (2003)

  6. Irani, S., Leung, V.: Scheduling with conflicts, and applications to traffic signal control. In: Proceedings of the 7th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 85–94 (1996)

  7. Kalyanasundaram, B., Pruhs, K.R.: Fault-tolerant scheduling. SIAM J. Comput. 34(3), 697–719 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  8. Motwani, R., Phillips, S., Torng, E.: Non-clairvoyant scheduling. Theor. Comput. Sci. 130(1), 17–47 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  9. Rosenkrantz, D.J., Stearns, R.E., Lewis II, P.M.: System level concurrency control for distributed database systems. ACM Trans. Database Syst. 3(2), 178–198 (1978)

    Article  Google Scholar 

  10. Scherer III, W.N., Scott, M.: Contention management in dynamic software transactional memory. In: PODC Workshop on Concurrency and Synchronization in Java Programs, pp. 70–79 (2004)

  11. Scherer III, W.N., Scott, M.: Advanced contention management for dynamic software transactional memory. In: Proceedings of the 24th Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 240–248 (2005)

  12. Silberschatz, A., Galvin, P.: Operating Systems Concepts, 5th edn. Wiley, New York (1999)

    Google Scholar 

  13. Vossen, G., Weikum, G.: Transactional Information Systems. Morgan Kaufmann, San Mateo (2001)

    Google Scholar 

  14. Yao, A.C.C.: Probabilistic computations: towards a unified measure of complexity. In: Proc. 18th Symp. Foundations of Computer Science (FOCS), pp. 222–227. IEEE (1977)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tami Tamir.

Additional information

An extended abstract of this paper appeared in the Proceedings of the 25th Annual ACM Symposium on Principles of Distributed Computing (PODC 2006), pp. 308–315.

H. Attiya supported by the Israel Science Foundation (grant number 953/06).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Attiya, H., Epstein, L., Shachnai, H. et al. Transactional Contention Management as a Non-Clairvoyant Scheduling Problem. Algorithmica 57, 44–61 (2010). https://doi.org/10.1007/s00453-008-9195-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00453-008-9195-x

Keywords

Navigation