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

skip to main content
10.1145/2755573.2755578acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
research-article

Seer: Probabilistic Scheduling for Hardware Transactional Memory

Published: 13 June 2015 Publication History

Abstract

Scheduling concurrent transactions to minimize contention is a well known technique in the Transactional Memory (TM) literature, which was largely investigated in the context of software TMs. However, the recent advent of Hardware Transactional Memory (HTM), and its inherently restricted nature, pose new technical challenges that prevent the adoption of existing schedulers: unlike software implementations of TM, existing HTMs provide no information on which data item or contending transaction caused abort. We propose Seer, a scheduler that addresses precisely this restriction of HTM by leveraging on an on-line probabilistic inference technique that identifies the most likely conflict relations, and establishes a dynamic locking scheme to serialize transactions in a fine-grained manner. Our evaluation shows that Seer improves the performance of the Intel TSX HTM by up to 2.5x, and by 62% on average, in TM benchmarks with 8 threads. These performance gains are not only a consequence of the reduced aborts, but also of the reduced activation of the HTM's pessimistic fall-back path.

References

[1]
Y. Afek, A. Levy, and A. Morrison. Software-improved Hardware Lock Elision. In Proc. Symposium on Principles of Distributed Computing, PODC, pages 212--221, 2014.
[2]
M. Ansari, et al. Improving Performance by Reducing Aborts in Hardware Transactional Memory. In Proc. High Performance Embedded Architectures and Compilers, HiPEAC, pages 35--49, 2010.
[3]
M. Ansari et al. Steal-on-Abort: Improving Transactional Memory Performance Through Dynamic Transaction Reordering. In Proc. High Performance Embedded Architectures and Compilers, HiPEAC, pages 4--18, 2009.
[4]
D. Dice, A. Kogan, Y. Lev, T. Merrifield, and M. Moir. Adaptive Integration of Hardware and Software Lock Elision Techniques. In Proc. Symposium on Parallelism in Algorithms and Architectures, SPAA, pages 188--197, 2014.
[5]
D. Dice, Y. Lev, and M. Moir. Scalable statistics counters. In Proc. Symposium on Parallelism in Algorithms and Architectures, SPAA, pages 43--52, 2013.
[6]
D. Dice et al. Early Experience with a Commercial Hardware Transactional Memory Implementation. In Proc. Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS, pages 157--168, 2009.
[7]
N. Diegues and J. Cachopo. Practical Parallel Nesting for Software Transactional Memory. In Proc. of Symposium on Distributed Computing, DISC, pages 149--163, 2013.
[8]
N. Diegues and P. Romano. Self-Tuning Intel Transactional Synchronization Extensions. In Proc. Conference on Autonomic Computing, ICAC, pages 209--219, 2014.
[9]
N. Diegues and P. Romano. Time-warp: lightweight abort minimization in transactional memory. In Proc. of Principles and Practice of Parallel Programming, PPoPP, pages 167--178, 2014.
[10]
N. Diegues, P. Romano, and L. Rodrigues. Virtues and limitations of commodity hardware transactional memory. In Proc. Conference on Parallel Architectures and Compilation Techniques, PACT, pages 3--14, 2014.
[11]
S. Dolev, D. Hendler, and A. Suissa. CAR-STM: Scheduling-based Collision Avoidance and Resolution for Software Transactional Memory. In Proc. Symposium on Principles of Distributed Computing, PODC, pages 125--134, 2008.
[12]
A. Dragojević, R. Guerraoui, and M. Kapalka. Stretching transactional memory. In Proc. of Conference on Programming Language Design and Implementation, PLDI, pages 155--165, 2009.
[13]
A. Dragojević, R. Guerraoui, A. V. Singh, and V. Singh. Preventing Versus Curing: Avoiding Conflicts in Transactional Memories. In Proc. Symposium on Principles of Distributed Computing, PODC, pages 7--16, 2009.
[14]
P. Felber, C. Fetzer, and T. Riegel. Dynamic performance tuning of word-based software transactional memory. In Proc. Principles and Practice of Parallel Programming, PPoPP, pages 237--246, 2008.
[15]
T. Heber, D. Hendler, and A. Suissa. On the Impact of Serializing Contention Management on STM Performance. Journal of Parallel and Distributed Computing, 72(6):739--750, June 2012.
[16]
M. Herlihy and J. E. B. Moss. Transactional Memory: Architectural Support for Lock-free Data Structures. In Proc. Symposium on Computer Architecture, ISCA, pages 289--300, 1993.
[17]
S. Hirve, R. Palmieri, and B. Ravindran. HiperTM: High Performance, Fault-Tolerant Transactional Memory. In Proc. Confenrece on Distributed Computing and Networking, ICDCN, pages 181--196, 2014.
[18]
C. Jacobi, T. Slegel, and D. Greiner. Transactional Memory Architecture and Implementation for IBM System Z. In Proc. Symposium on Microarchitecture, MICRO, pages 25--36, 2012.
[19]
W. Maldonado, et al. Scheduling Support for Transactional Memory Contention Management. In Proc. Principles and Practice of Parallel Programming, PPoPP, pages 79--90, 2010.
[20]
A. Matveev and N. Shavit. Reduced Hardware Transactions: A New Approach to Hybrid Transactional Memory. In Proc. Symposium on Parallelism in Algorithms and Architectures, SPAA, pages 11--22, 2013.
[21]
C. Minh et al. STAMP: Stanford Transactional Applications for Multi-Processing. In Proc. Symposium on Workload Characterization, IISWC, pages 35--46, 2008.
[22]
S. Peluso, P. Romano, and F. Quaglia. SCORe: A Scalable One-Copy Serializable Partial Replication Protocol. In Proc. of Middleware, pages 456--475, 2012.
[23]
R. Rajwar and J. R. Goodman. Speculative Lock Elision: Enabling Highly Concurrent Multithreaded Execution. In Proc. Symposium on Microarchitecture, MICRO, pages 294--305, 2001.
[24]
H. Rito and J. Cachopo. ProPS: A Progressively Pessimistic Scheduler for Software Transactional Memory. In Proc. European Conference on Parallel Processing, Euro-Par, pages 150--161, 2014.
[25]
C. Rossbach et al. TxLinux: Using and Managing Hardware Transactional Memory in an Operating System. In Proc. Symposium on Operating Systems Principles, SOSP, pages 87--102, 2007.
[26]
R. Yoo and H. Lee. Adaptive Transaction Scheduling for Transactional Memory Systems. In Proc. Symposium on Parallelism in Algorithms and Architectures, SPAA, pages 169--178, 2008.
[27]
R. Yoo et al. Performance Evaluation of Intel; Transactional Synchronization Extensions for High-performance Computing. In Proc. Conference on High Performance Computing, Networking, Storage and Analysis, SC, pages 1--11, 2013.

Cited By

View all
  • (2024)LockillerTM: Enhancing Performance Lower Bounds in Best-Effort Hardware Transactional Memory2024 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS57955.2024.00081(865-875)Online publication date: 27-May-2024
  • (2021)Migration in Hardware Transactional Memory on Asymmetric MultiprocessorIEEE Access10.1109/ACCESS.2021.30775399(69346-69364)Online publication date: 2021
  • (2019)HeTM: Transactional Memory for Heterogeneous Systems2019 28th International Conference on Parallel Architectures and Compilation Techniques (PACT)10.1109/PACT.2019.00026(232-244)Online publication date: Sep-2019
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SPAA '15: Proceedings of the 27th ACM symposium on Parallelism in Algorithms and Architectures
June 2015
362 pages
ISBN:9781450335881
DOI:10.1145/2755573
  • General Chair:
  • Guy Blelloch,
  • Program Chair:
  • Kunal Agrawal
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: 13 June 2015

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. best-effort
  2. hardware transactional memory
  3. scheduling

Qualifiers

  • Research-article

Funding Sources

  • Fundação para a Ciência e Tecnologia

Conference

SPAA '15

Acceptance Rates

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

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 21 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)LockillerTM: Enhancing Performance Lower Bounds in Best-Effort Hardware Transactional Memory2024 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS57955.2024.00081(865-875)Online publication date: 27-May-2024
  • (2021)Migration in Hardware Transactional Memory on Asymmetric MultiprocessorIEEE Access10.1109/ACCESS.2021.30775399(69346-69364)Online publication date: 2021
  • (2019)HeTM: Transactional Memory for Heterogeneous Systems2019 28th International Conference on Parallel Architectures and Compilation Techniques (PACT)10.1109/PACT.2019.00026(232-244)Online publication date: Sep-2019
  • (2019)Extending hardware transactional memory capacity via rollback-only transactions and suspend/resumeDistributed Computing10.1007/s00446-019-00363-1Online publication date: 11-Nov-2019
  • (2018)Speculative Read Write LocksProceedings of the 19th International Middleware Conference10.1145/3274808.3274825(214-226)Online publication date: 26-Nov-2018
  • (2018)Enhancing efficiency of hybrid transactional memory via dynamic data partitioning schemesProceedings of the 18th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing10.1109/CCGRID.2018.00020(51-61)Online publication date: 1-May-2018
  • (2018)Hardware Transactional Memory Based on Abort Prediction and Adaptive Retry Policy for Multi-Core In-Memory Databases2018 IEEE International Conference on Big Data and Smart Computing (BigComp)10.1109/BigComp.2018.00061(367-374)Online publication date: Jan-2018
  • (2017)SeerACM Transactions on Computer Systems10.1145/313203635:3(1-41)Online publication date: 14-Nov-2017
  • (2017)Transactional Lock Elision Meets CombiningProceedings of the ACM Symposium on Principles of Distributed Computing10.1145/3087801.3087838(231-240)Online publication date: 25-Jul-2017
  • (2017)Analysis, Classification and Comparison of Scheduling Techniques for Software Transactional MemoriesIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2017.274028528:12(3356-3373)Online publication date: 1-Dec-2017
  • Show More Cited By

View Options

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