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

skip to main content
10.1145/2851613.2851754acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

An embedded domain specific language for distributed memory transactions in Java

Published: 04 April 2016 Publication History

Abstract

Transactional memory is an abstraction where concurrent memory accesses are grouped into atomic transactions, similar to database transactions. There are many advantages in using this model instead of conventional ones, such as ease of programming: programmers simply mark code where race conditions may occur and the transactional system takes care to ensure the correctness of the results. This model has proven to be promising for Symmetric Multi-Processing (SMP) machines, however few studies in this area are focused on distributed architectures. These architectures are extremely important nowadays, as they compose a large portion of high performance computing platforms, and because of the trend of more and more computing devices communicating with each other. The main objective of this paper is to propose a domain specific language embedded in Java, for implementing memory transactions that can involve local and distributed objects on a network. This goal was approached both in the language level, allowing the programmer to define composable transactional actions, and in transactional system level, supporting the implementation of the language's abstractions. To validate our model, preliminary measurements of a prototype implementation of the system described here are presented.

References

[1]
R. Bandeira, A. Du Bois, M. Pilla, J. Vizzotto, and M. Machado. Composable memory transactions for java using a monadic intermediate language. In A. Pardo and S. D. Swierstra, editors, Programming Languages, volume 9325 of Lecture Notes in Computer Science, pages 128--142. Springer International Publishing, 2015.
[2]
R. L. Bocchino, V. S. Adve, and B. L. Chamberlain. Software transactional memory for large scale clusters. In Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, PPoPP '08, pages 247--258, New York, NY, USA, 2008. ACM.
[3]
D. Dice, O. Shalev, and N. Shavit. Transactional locking ii. In Proceedings of the 20th international conference on Distributed Computing, DISC'06, pages 194--208, Berlin, Heidelberg, 2006. Springer-Verlag.
[4]
A. Dragojević, R. Guerraoui, and M. Kapalka. Stretching transactional memory. In Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation, PLDI '09, pages 155--165, New York, NY, USA, 2009. ACM.
[5]
A. R. Du Bois and M. A. Echevarria. Domain specific language for composable memory transactions in java. In DSL '09: Proceedings of the IFIP TC 2 Working Conference on Domain-Specific Languages, pages 170--186, Berlin, Heidelberg, 2009. Springer-Verlag.
[6]
T. Harris, J. Larus, and R. Rajwar. Transactional Memory, 2nd Edition. Morgan and Claypool Publishers, 2nd edition, 2010.
[7]
T. Harris, S. Marlow, S. Peyton-Jones, and M. Herlihy. Composable memory transactions. In Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming, PPoPP '05, pages 48--60, New York, NY, USA, 2005. ACM.
[8]
C. Kotselidis, M. Ansari, K. Jarvis, M. Luján, C. Kirkham, and I. Watson. Distm: A software transactional memory framework for clusters. In Proceedings of the 2008 37th International Conference on Parallel Processing, ICPP '08, pages 51--58, Washington, DC, USA, 2008. IEEE Computer Society.
[9]
L. Lamport. Time, clocks, and the ordering of events in a distributed system. Commun. ACM, 21(7):558--565, 1978.
[10]
V. J. Marathe, M. F. Spear, C. Heriot, A. Acharya, D. Eisenstat, W. N. Scherer III, and M. L. Scott. Lowering the overhead of software transactional memory. Technical Report TR 893, Computer Science Department, University of Rochester, Mar 2006. Condensed version submitted for publication.
[11]
S. Marlow. Haskell 2010 language report. https://www.haskell.org/onlinereport/haskell2010/, 2010.
[12]
T. Parr. The Definitive ANTLR Reference: Building Domain-Specific Languages. Pragmatic Bookshelf, 2007.
[13]
M. Saad and B. Ravindran. Transactional forwarding: Supporting highly-concurrent stm in asynchronous distributed systems. In Computer Architecture and High Performance Computing (SBAC-PAD), 2012 IEEE 24th International Symposium on, pages 219--226, oct. 2012.

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '16: Proceedings of the 31st Annual ACM Symposium on Applied Computing
April 2016
2360 pages
ISBN:9781450337397
DOI:10.1145/2851613
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 the author(s) 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].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 April 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. parallel and distributed computing
  2. programming languages
  3. transactional memory

Qualifiers

  • Research-article

Conference

SAC 2016
Sponsor:
SAC 2016: Symposium on Applied Computing
April 4 - 8, 2016
Pisa, Italy

Acceptance Rates

SAC '16 Paper Acceptance Rate 252 of 1,047 submissions, 24%;
Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 53
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 21 Sep 2024

Other Metrics

Citations

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media