Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3087556.3087565acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
research-article
Public Access

Fast Scheduling in Distributed Transactional Memory

Published: 24 July 2017 Publication History

Abstract

We investigate scheduling algorithms for distributed transactional memory systems where transactions residing at nodes of a communication graph operate on shared, mobile objects. A transaction requests the objects it needs, executes once those objects have been assembled, and then possibly forwards those objects to other waiting transactions. Minimizing execution time in this model is known to be NP-hard for arbitrary communication graphs, and also hard to approximate within any factor smaller than the size of the graph. Nevertheless, networks on chips, multi-core systems, and clusters are not arbitrary. Here, we explore efficient execution schedules in specialized graphs likely to arise in practice: Clique, Line, Grid, Cluster, Hypercube, Butterfly, and Star. In most cases, when individual transactions request k objects, we obtain solutions close to a factor O(k) from optimal, yielding near-optimal solutions for constant k. These execution times approximate the TSP tour lengths of the objects in the graph. We show that for general networks, even for two objects (k=2), it is impossible to obtain execution time close to the objects' optimal TSP tour lengths, which is why it is useful to consider more realistic network models. To our knowledge, this is the first attempt to obtain provably fast schedules for distributed transactional memory.

References

[1]
Hagit Attiya, Leah Epstein, Hadas Shachnai, and Tami Tamir. 2010. Transactional Contention Management as a Non-Clairvoyant Scheduling Problem.Algorithmica 57, 1 (2010), 44--61.
[2]
Robert L. Bocchino, Vikram S. Adve, and Bradford L. Chamberlain. 2008. Software transactional memory for large scale clusters. In PPoPP. 247--258. x978--1--59593--795--7
[3]
Costas Busch, Maurice Herlihy, Miroslav Popovic, and Gokarna Sharma. 2015. Impossibility Results for Distributed Transactional Memory. In PODC. 207--215. http://dx.doi.org/10.1145/2767386.2767433
[4]
Harold W. Cain, Maged M. Michael, Brad Frey, Cathy May, Derek Williams, and Hung Q. Le. 2013. Robust architectural support for transactional memory in the power architecture. In ISCA. 225--236. http://dx.doi.org/10.1145/2485922.2485942
[5]
Henri Casanova, Arnaud Legrand, and Yves Robert. 2008. Parallel Algorithms (1st ed.). Chapman & Hall/CRC. x9781584889458
[6]
M. Y. Chan. 1989. Embedding of D-dimensional Grids into Optimal Hypercubes. In SPAA. 52--57. x0--89791--323-X http://dx.doi.org/10.1145/72935.72941
[7]
Paolo Costa, Hitesh Ballani, Kaveh Razavi, and Ian Kash. 2015. R2C2: A Network Stack for Rack-scale Computers. In SIGCOMM. 551--564. x978--1--4503--3542--3 http://dx.doi.org/10.1145/2785956.2787492
[8]
Maria Couceiro, Paolo Romano, Nuno Carvalho, and Luıs Rodrigues. 2009. D2STM: Dependable Distributed Software Transactional Memory. In PRDC. 307--313. x978-0--7695--3849--5
[9]
Aleksandar Dragojević, Rachid Guerraoui, Anmol V. Singh, and Vasu Singh. 2009. Preventing Versus Curing: Avoiding Conflicts in Transactional Memories. In PODC. 7--16. x978--1--60558--396--9 http://dx.doi.org/10.1145/1582716.1582725
[10]
Michel Dubois, Murali Annavaram, and Per Stenstrm. 2012. Parallel Computer Organization and Design. Cambridge University Press, New York, NY, USA. x0521886759, 9780521886758
[11]
Wilson W. L. Fung, Inderpreet Singh, Andrew Brownsword, and Tor M. Aamodt. 2011. Hardware transactional memory for GPU architectures. In MICRO. 296--307. x978--1--4503--1053--6
[12]
Rachid Guerraoui, Maurice Herlihy, and Bastian Pochon. 2005. Toward a Theory of Transactional Contention Managers. In PODC. 258--264.
[13]
Ruud Haring, Martin Ohmacht, Thomas Fox, Michael Gschwind, David Satterfield, Krishnan Sugavanam, Paul Coteus, Philip Heidelberger, Matthias Blumrich, Robert Wisniewski, Alan Gara, George Chiu, Peter Boyle, Norman Chist, and Changhoan Kim. 2012. The IBM Blue Gene/Q Compute Chip.IEEE Micro32, 2 (2012), 48--60.0272--1732
[14]
Danny Hendler, Alex Naiman, Sebastiano Peluso, Francesco Quaglia, Paolo Romano, and Adi Suissa. 2013. Exploiting Locality in Lease-Based Replicated Transactional Memory via Task Migration. In DISC. 121--133.
[15]
Maurice Herlihy and J. Eliot B. Moss. 1993. Transactional Memory: Architectural Support for Lock-free Data Structures. In ISCA. 289--300. x0--8186--3810--9
[16]
Maurice Herlihy and Ye Sun. 2007. Distributed transactional memory for metric-space networks.Distributed Computing20, 3 (2007), 195--208.
[17]
William N. Scherer III and Michael L. Scott. 2005. Advanced contention management for dynamic software transactional memory. In PODC. 240--248.
[18]
Intel. 2012. http://software.intel.com/en-us/blogs/2012/02/07/transactional-synchronization-in-haswell. (2012).
[19]
Junwhan Kim and Binoy Ravindran. 2010. On Transactional Scheduling in Distributed Transactional Memory Systems. In SSS. 347--361. x3--642--16022-0, 978--3--642--16022--6
[20]
Junwhan Kim and B. Ravindran. 2013. Scheduling Transactions in Replicated Distributed Software Transactional Memory. In CCGrid. 227--234.
[21]
F. Thomson Leighton. 1992. Introduction to Parallel Algorithms and Architectures: Array, Trees, Hypercubes. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA. x1--55860--117--1
[22]
Dawei Li, Jie Wu, Zhiyong Liu, and Fa Zhang. 2017. Towards the Tradeoffs in Designing Data Center Network Architectures.IEEE Transactions on Parallel and Distributed Systems28, 1 (Jan. 2017), 260--273.1045--9219 http://dx.doi.org/10.1109/TPDS.2016.2610970
[23]
Kaloian Manassiev, Madalin Mihailescu, and Cristiana Amza. 2006. Exploiting Distributed Version Concurrency in a Transactional Memory Cluster. In PPoPP. 198--208. x1--59593--189--9
[24]
Marek Michalewicz, Lukasz Orlowski, and Yuefan Deng. 2015. Creating Interconnect Topologies by Algorithmic Edge Removal: MOD and SMOD Graphs.Supercomput. Front. Innov.: Int. J.2, 4 (March 2015), 16--47.2409--6008
[25]
Takuya Nakaike, Rei Odaira, Matthew Gaudet, Maged M. Michael, and Hisanobu Tomari. 2015. Quantitative comparison of hardware transactional memory for Blue Gene/Q, zEnterprise EC12, Intel Core, and POWER8. In ISCA. 144--157. http://dx.doi.org/10.1145/2749469.2750403
[26]
Roberto Palmieri, Sebastiano Peluso, and Binoy Ravindran. 2015. Transaction Execution Models in Partially Replicated Transactional Memory: The Case for Data-Flow and Control-Flow. In Transactional Memory. 341--366. x978--3--319--14719--2 http://dx.doi.org/10.1007/978--3--319--14720--8_16
[27]
Sudeep Pasricha and Nikil Dutt. 2008. On-Chip Communication Architectures: System on Chip Interconnect. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA. x0123705215, 9780080558288
[28]
Sebastiano Peluso, Pedro Ruivo, Paolo Romano, Francesco Quaglia, and Luís Rodrigues. 2012. When Scalability Meets Consistency: Genuine Multiversion Update-Serializable Partial Data Replication. In ICDCS. 455--465. http://dx.doi.org/10.1109/ICDCS.2012.55
[29]
Paolo Romano, Roberto Palmieri, Francesco Quaglia, Nuno Carvalho, and Luís Rodrigues. 2014. On speculative replication of transactional systems.J. Comput. Syst. Sci.80, 1 (2014), 257--276. http://dx.doi.org/10.1016/j.jcss.2013.07.006
[30]
Mohamed M. Saad and Binoy Ravindran. 2011. Snake: Control Flow Distributed Software Transactional Memory. In SSS. 238--252. http://dx.doi.org/10.1007/978--3--642--24550--3_19
[31]
Gokarna Sharma and Costas Busch. 2012a. A Competitive Analysis for Balanced Transactional Memory Workloads. Algorithmica 63, 1--2 (2012), 296--322.0178--4617
[32]
Gokarna Sharma and Costas Busch. 2012b. Window-Based Greedy Contention Management for Transactional Memory: Theory and Practice. Distrib. Comput. 25, 3 (2012), 225--248. 0178--2770
[33]
Gokarna Sharma and Costas Busch. 2014. Distributed Transactional Memory for General Networks.Distrib. Comput.27, 5 (2014), 329--362.
[34]
Nir Shavit and Dan Touitou. 1997. Software Transactional Memory.Distrib. Comput.10, 2 (1997), 99--116.
[35]
Richard M. Yoo and Hsien-Hsin S. Lee. 2008. Adaptive transaction scheduling for transactional memory systems. In SPAA. 169--178.
[36]
Bo Zhang, Binoy Ravindran, and Roberto Palmieri. 2014. Distributed Transactional Contention Management as the Traveling Salesman Problem. In SIROCCO. 54--67. http://dx.doi.org/10.1007/978--3--319-09620--9_6

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SPAA '17: Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures
July 2017
392 pages
ISBN:9781450345934
DOI:10.1145/3087556
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 July 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. approximation
  2. contention
  3. data-flow model
  4. distributed systems
  5. execution time
  6. scheduling
  7. transactional memory

Qualifiers

  • Research-article

Funding Sources

Conference

SPAA '17
Sponsor:

Acceptance Rates

SPAA '17 Paper Acceptance Rate 31 of 127 submissions, 24%;
Overall Acceptance Rate 447 of 1,461 submissions, 31%

Upcoming Conference

SPAA '25
37th ACM Symposium on Parallelism in Algorithms and Architectures
July 28 - August 1, 2025
Portland , OR , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)110
  • Downloads (Last 6 weeks)16
Reflects downloads up to 08 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Ordered Scheduling in Control-Flow Distributed Transactional MemoryDistributed Computing and Intelligent Technology10.1007/978-3-031-24848-1_5(67-83)Online publication date: 8-Jan-2023
  • (2021)Dynamic scheduling in distributed transactional memoryDistributed Computing10.1007/s00446-021-00410-wOnline publication date: 20-Nov-2021
  • (2020)GraphTMProceedings of the 21st International Conference on Distributed Computing and Networking10.1145/3369740.3369774(1-10)Online publication date: 4-Jan-2020
  • (2020)Dynamic Scheduling in Distributed Transactional Memory2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS47924.2020.00094(874-883)Online publication date: May-2020
  • (2020)Fast Scheduling in Distributed Transactional MemoryTheory of Computing Systems10.1007/s00224-020-10008-7Online publication date: 23-Oct-2020

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media