skip to main content
10.1145/3663338.3665827acmconferencesArticle/Chapter ViewAbstractPublication PagespodcConference Proceedingsconference-collections
research-article

The Next 700 Benchmarking Frameworks for Concurrent Data Structures

Published: 20 June 2024 Publication History

Abstract

Concurrent data structures are essential building blocks for applications in almost every domain. However, differences among domains make it difficult to share results. Some testing frameworks model specific workloads, while others emphasize stress tests, but there is no easy way to evaluate if a new data structure will accelerate an application based only on such benchmarks. A confounding factor is the huge space of configuration options.
We address these issues with a new benchmarking tool for concurrent data structures in Java and C++. Our tool emphasizes a declarative description of workloads, a modular approach to defining components, and heterogeneity throughout.
As preliminary evidence of the effectiveness of our tool, we show that it can implement important and realistic workloads. We present six different workloads that lead to all six possibilities of relevant performance of the three most popular binary search trees written in Java.

References

[1]
TPC [n. d.]. TPC benchmarks. https://www.tpc.org/.
[2]
Yehuda Afek, Haim Kaplan, Boris Korenfeld, Adam Morrison, and Robert E Tarjan. 2014. The CB tree: a practical concurrent self-adjusting search tree. Distributed computing 27, 6 (2014), 393--417.
[3]
Vitaly Aksenov, Dan Alistarh, Alexandra Drozdova, and Amirkeivan Mohtashami. 2023. The splay-list: A distribution-adaptive concurrent skip-list. Distributed Computing (2023), 1--24.
[4]
Vitaly Aksenov, Vincent Gramoli, Petr Kuznetsov, Anna Malova, and Srivatsan Ravi. 2017. A concurrency-optimal binary search tree. In Euro-Par 2017: Parallel Processing. Springer, 580--593.
[5]
Nathan G Bronson, Jared Casper, Hassan Chafi, and Kunle Olukotun. 2010. A practical concurrent binary search tree. ACM Sigplan Notices 45, 5 (2010), 257--268.
[6]
Trevor Brown, Aleksandar Prokopec, and Dan Alistarh. 2020. Non-blocking interpolation search trees with doubly-logarithmic running time. In Proceedings of the 25th PPoPP. 276--291.
[7]
Brian F Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. 2010. Benchmarking cloud serving systems with YCSB. In Proceedings of the 1st ACM symposium on Cloud computing. 143--154.
[8]
Tyler Crain, Vincent Gramoli, and Michel Raynal. 2013. A contention-friendly binary search tree. In Euro-Par 2013 Parallel Processing. Springer, 229--240.
[9]
Vincent Gramoli. 2015. More than you ever wanted to know about synchronization: Synchrobench, measuring the impact of the synchronization on concurrent algorithms. In Proceedings of the 20th Symposium on Principles and Practice of Parallel Programming. 1--10.
[10]
Andreas Haas, Thomas Hütter, Christoph M Kirsch, Michael Lippautz, Mario Preishuber, and Ana Sokolova. 2015. Scal: A benchmarking suite for concurrent data structures. In Networked Systems: Third International Conference, NETYS 2015, Agadir, Morocco, May 13-15, 2015, Revised Selected Papers 3. Springer, 1--14.
[11]
Nikolaos D. Kallimanis. 2021. Synch: A framework for concurrent data-structures and benchmarks. Journal of Open Source Software 6, 64 (2021), 3143.
[12]
Rosina Kharal and Trevor Brown. 2022. Performance Anomalies in Concurrent Data Structure Microbenchmarks. arXiv preprint arXiv:2208.08469 ( 2022).
[13]
David MW Powers. 1998. Applications and explanations of Zipf's law. In New methods in language processing and computational natural language learning.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ApPLIED'24: Proceedings of the 2024 Workshop on Advanced Tools, Programming Languages, and PLatforms for Implementing and Evaluating algorithms for Distributed systems
June 2024
95 pages
ISBN:9798400706707
DOI:10.1145/3663338
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: 20 June 2024

Check for updates

Author Tags

  1. concurrency
  2. benchmark
  3. data structures

Qualifiers

  • Research-article

Funding Sources

Conference

ApPLIED'24
Sponsor:

Acceptance Rates

Overall Acceptance Rate 3 of 4 submissions, 75%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 72
    Total Downloads
  • Downloads (Last 12 months)72
  • Downloads (Last 6 weeks)7
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media