Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article
Free access

Democratizing transactional programming

Published: 01 January 2014 Publication History

Abstract

Control transactions without compromising their simplicity for the sake of expressiveness, application concurrency, or performance.

References

[1]
Almes, G.T., Black, A.P., Lazowska, E.D., and Noe, J.D. The Eden system: A technical review. IEEE Transactions on Software Engineering 11, 1 (Jan. 1985), 43--59.
[2]
Cascaval, C., Blundell, C., Michael, M., Cain, H.W., Wu, P., Chiras, S., and Chatterjee, S. Software transactional memory: Why is it only a research toy? Queue 6, 5 (Sept. 2008), 46--58.
[3]
Crain, T., Gramoli, V., and Raynal, M. A speculation-friendly binary search tree. In Proceedings of ACM SIGPLAN Conference on the Principles and Practice of Parallel Computing (New Orleans, Feb. 23--27). ACM Press, New York, 2012, 161--170.
[4]
Dice, D., Lev, Y., Moir, M., and Nussbaum, D. Early experience with a commercial hardware transactional memory implementation. In Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems (Washington, D.C., Mar. 7--11). ACM Press, New York, 2009, 157--168.
[5]
Dice, D., Shalev, O., and Shavit, N. Transactional locking II. In Proceedings of the International Symposium on DIStributed Computing, Vol. 4167 of LNCS (Stockholm, Sept. 18--20). Springer, 2006, 194--208.
[6]
Dragojevic, A., Felber, P., Gramoli, V., and Guerraoui, R. Why STM can be more than a research toy. Commun. ACM 54, 4 (Apr. 2011), 70--77.
[7]
Eswaran, K.P., Gray, J.N., Lorie, R.A., and Traiger, I.L. The notions of consistency and predicate locks in a database system. Commun. ACM 19, 11 (Nov. 1976), 624--633.
[8]
Felber, P., Gramoli, V., and Guerraoui, R. Elastic transactions. In Proceedings of the International Symposium on DIStributed Computing, Vol. 5805 of LNCS (Elche, Spain, Sept. 23--25). Springer, 2009, 93--107.
[9]
Gramoli, V., Guerraoui, R., and Trigonakis, V. TM2C: A software transactional memory for many-cores. In Proceedings of EuroSys (Bern, Switzerland, Apr. 10--13). ACM Press, New York, 2012, 351--364.
[10]
Gramoli, V., Harmanci, D., and Felber, P. On the input acceptance of transactional memory. Parallel Processing Letters 20, 1 (Mar. 2010), 31--50.
[11]
Greenwald, M. Two-handed emulation: How to build non-blocking implementations of complex data-structures using DCAS. In Proceedings of the Symposium on Principles of Distributed Computing (Monterey, CA, July 21--24). ACM Press, New York, 2002, 260--269.
[12]
Guerraoui, R., Capobianchi, R., Lanusse, A., and Roux, P. Nesting actions through asynchronous message passing: The ACS protocol. In Proceedings of the European Conference on Object-Oriented Programming, Vol. 615 of LNCS (Utrecht, The Netherlands, June 29--July 3). Springer, 1992, 170--184.
[13]
Guerraoui, R. and Kapalka, M. Principles of Transactional Memory. Morgan & Claypool, San Rafael, CA, 2010.
[14]
Harris, T. A pragmatic implementation of non-blocking linked-lists. In Proceedings of the International Symposium on DIStributed Computing, Vol. 2180 of LNCS (Lisboa, Portugal, Oct 3--5). Springer, 2001, 300--314.
[15]
Harris, T., Marlow, S., Peyton-Jones, S., and Herlihy, M. Composable memory transactions. In Proceedings of the ACM SIGPLAN Conference on the Principles and Practice of Parallel Computing (Chicago, June 15--17). ACM Press, New York, 2005, 48--60.
[16]
Herlihy, M. and Koskinen, E. Transactional boosting: A methodology for highly concurrent transactional objects. In Proceedings of ACM SIGPLAN Conference on the Principles and Practice of Parallel Computing (Salt Lake City, Feb. 20--23). ACM Press, New York, 2008, 207--246.
[17]
Herlihy, M., Luchangco, V., Moir, M., and Scherer III, W.N. Software transactional memory for dynamic-sized data structures. In Proceedings of the ACM Symposium on the Principles of Distributed Computing (Boston, July 13--16). ACM Press, New York, 2003, 92--101.
[18]
Herlihy, M. and Moss, J.E.B. Transactional memory: Architectural support for lock-free data structures. SIGARCH Computer Architecture News 21, 2 (May 1993), 289--300.
[19]
Knight, T. An architecture for mostly functional languages. In Proceedings of the ACM Conference on LISP and Functional Programming (Cambridge, MA, Aug. 4--6, 1986), 105--112.
[20]
Korland, G., Shavit, N., and Felber, P. Deuce: Noninvasive software transactional memory. Transactions on High-Performance Embedded Architectures and Compilers 5, 2 (Jan. 2010).
[21]
Liskov, B. The Argus language and system. In Proceedings of Distributed Systems: Methods and Tools for Specification, An Advanced Course, Vol. 190 of LNCS. Springer, 1985, 343--430.
[22]
Liskov, B. and Scheifler, R. Guardians and actions: Linguistic support for robust, distributed programs. In Proceedings of the Symposium on the Principles of Programming Languages (Albuquerque, NM). ACM Press, New York, 1982, 7--19.
[23]
Lynch, N.A. Multilevel atomicity a new correctness criterion for database concurrency control. ACM Transactions on Database Systems 8, 4 (Dec. 1983), 484--502.
[24]
Moss, J.E.B. Open nested transactions: Semantics and support. Poster presentation at the Workshop on Memory Performance (Austin, TX, 2006).
[25]
Papadimitriou, C.H. The serializability of concurrent database updates. Journal of the ACM 26, 4 (Oct. 1979), 631--653.
[26]
Ramadan, H.E., Roy, I., Herlihy, M., and Witchel, E. Committing conflicting transactions in an STM. In Proceedings of the ACM SIGPLAN Conference on the Principles and Practice of Parallel Computing (Raleigh, NC, Feb. 14--18), ACM Press, New York, 2009, 163--172.
[27]
Reuter, A. Concurrency on high-traffic data elements. In Proceedings of the ACM Conference on the Principles of Database Systems (Los Angeles, Mar. 29--31). ACM Press, New York, 1982, 83--92.
[28]
Scherer III, W.N. and Scott, M.L. Advanced contention management for dynamic software transactional memory. In Proceedings of the ACM Symposium on the Principles of Distributed Computing (Las Vegas, July 17--25). ACM Press, New York, 2005, 240--248.
[29]
Shavit, N. and Touitou, D. Software transactional memory. In Proceedings of the ACM Symposium on Principles of Distributed Computing (Ottawa, Aug. 20--23). ACM Press, New York, 1995, 204--213.
[30]
Shpeisman, T., Menon, V., Adl-Tabatabai, A.-L., Balensiefer, S., Grossman, D., Hudson, R.L., Moore, K.F., and Saha, B. Enforcing isolation and ordering in STM. In Proceedings of the ACM Conference on Programming Language Design and Implementation (San Diego, CA). ACM Press, New York, 2007, 78--88.

Cited By

View all
  • (2021)Version Reconciliation for Collaborative DatabasesProceedings of the ACM Symposium on Cloud Computing10.1145/3472883.3486980(473-488)Online publication date: 1-Nov-2021
  • (2021)Investigating the semantics of futures in transactional memory systemsProceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3437801.3441594(16-30)Online publication date: 17-Feb-2021
  • (2017)SeerACM Transactions on Computer Systems10.1145/313203635:3(1-41)Online publication date: 14-Nov-2017
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Communications of the ACM
Communications of the ACM  Volume 57, Issue 1
January 2014
107 pages
ISSN:0001-0782
EISSN:1557-7317
DOI:10.1145/2541883
  • Editor:
  • Moshe Y. Vardi
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 January 2014
Published in CACM Volume 57, Issue 1

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article
  • Popular
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)108
  • Downloads (Last 6 weeks)6
Reflects downloads up to 27 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Version Reconciliation for Collaborative DatabasesProceedings of the ACM Symposium on Cloud Computing10.1145/3472883.3486980(473-488)Online publication date: 1-Nov-2021
  • (2021)Investigating the semantics of futures in transactional memory systemsProceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3437801.3441594(16-30)Online publication date: 17-Feb-2021
  • (2017)SeerACM Transactions on Computer Systems10.1145/313203635:3(1-41)Online publication date: 14-Nov-2017
  • (2017)The Information Needed for Reproducing Shared Memory ExperimentsEuro-Par 2016: Parallel Processing Workshops10.1007/978-3-319-58943-5_48(596-608)Online publication date: 28-May-2017
  • (2016)Estimating transaction execution times for a software transactional memory2016 Sixth International Conference on Information Science and Technology (ICIST)10.1109/ICIST.2016.7483399(137-141)Online publication date: May-2016
  • (2016)In the Search for Optimal ConcurrencyStructural Information and Communication Complexity10.1007/978-3-319-48314-6_10(143-158)Online publication date: 4-Nov-2016
  • (2016)Profiling Transactional ApplicationsNetworked Systems10.1007/978-3-319-26850-7_19(278-292)Online publication date: 23-Mar-2016
  • (2015)TransactionsJournal of Computing Sciences in Colleges10.5555/2752981.275301730:5(160-166)Online publication date: 1-May-2015
  • (2015)More than you ever wanted to know about synchronization: synchrobench, measuring the impact of the synchronization on concurrent algorithmsACM SIGPLAN Notices10.1145/2858788.268850150:8(1-10)Online publication date: 24-Jan-2015
  • (2015)More than you ever wanted to know about synchronization: synchrobench, measuring the impact of the synchronization on concurrent algorithmsProceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/2688500.2688501(1-10)Online publication date: 24-Jan-2015
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Digital Edition

View this article in digital edition.

Digital Edition

Magazine Site

View this article on the magazine site (external)

Magazine Site

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media