skip to main content
10.1145/3399666.3399910acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
research-article

The tale of 1000 Cores: an evaluation of concurrency control on real(ly) large multi-socket hardware

Published:14 June 2020Publication History

ABSTRACT

In this paper, we set out the goal to revisit the results of "Starring into the Abyss [...] of Concurrency Control with [1000] Cores" [27] and analyse in-memory DBMSs on today's large hardware. Despite the original assumption of the authors, today we do not see single-socket CPUs with 1000 cores. Instead multi-socket hardware made its way into production data centres. Hence, we follow up on this prior work with an evaluation of the characteristics of concurrency control schemes on real production multi-socket hardware with 1568 cores. To our surprise, we made several interesting findings which we report on in this paper.

References

  1. Tiemo Bang, Ismail Oukid, Norman May, Ilia Petrov, and Carsten Binnig. 2020. Robust Performance of Main Memory Data Structures by Configuration. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD'20),. ACM, New York, NY, USA, 16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Philip A. Bernstein and Nathan Goodman. 1981. Concurrency Control in Distributed Database Systems. ACM Comput. Surv. 13, 2 (June 1981), 185--221.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Philip A. Bernstein and Nathan Goodman. 1983. Multiversion Concurrency Control---Theory and Algorithms. ACM Trans. Database Syst. 8, 4 (Dec. 1983), 465--483.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Trevor Brown, Alex Kogan, Yossi Lev, and Victor Luchangco. 2016. Investigating the Performance of Hardware Transactions on a Multi-Socket Machine. In Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures. ACM, 2935796, 121--132. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Austin T. Clements, M. Frans Kaashoek, and Nickolai Zeldovich. 2012. Scalable Address Spaces using RCU Balanced Trees. In Proceedings of the Seventeenth International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, 199--210. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Tudor David, Rachid Guerraoui, and Vasileios Trigonakis. 2013. Everything You Always Wanted to Know About Synchronization But Were Afraid to Ask. In Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles. ACM, 2522714, 33--48. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Ulrich Drepper. 2007. What Every Programmer Should Know About Memory. https://people.freebsd.org/~lstewart/articles/cpumemory.pdf.Google ScholarGoogle Scholar
  8. Alireza Farshin, Amir Roozbeh, Gerald Q. Maguire, and Dejan Kostić. 2019. Make the Most out of Last Level Cache in Intel Processors. In Proceedings of the Fourteenth EuroSys Conference 2019. Association for Computing Machinery, Article 8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Hubertus Franke, Rusty Russell, and Matthew Kirkwood. 2002. Fuss, Futexes and Furwocks: Fast Userlevel Locking in Linux. In AUUG Conference Proceedings, Vol. 85. AUUG, Inc. Kensington, NSW, Australia, 479 -- 495.Google ScholarGoogle Scholar
  10. Hewlett Packard Enterprise. 2018. The Unique Modular Architecture of HPE Superdome Flex: How it Works and Why It Matters. https://community.hpe.com/t5/Servers-The-Right-Compute/The-unique-modular-architecture-of-HPE-Superdome-Flex-How-it/ba-p/7001330#.XnsMbEBFyAg.Google ScholarGoogle Scholar
  11. Hewlett Packard Enterprise Development LP. 2018. HPE Superdome Flex, Intel Processors Scale SAP HANA. https://www.intel.com/content/www/us/en/big-data/hpe-superdome-flex-sap-hana-wp.html.Google ScholarGoogle Scholar
  12. Hewlett Packard Enterprise Development LP. 2020. HPE Superdome Flex Server Architecture and RAS. https://assets.ext.hpe.com/is/content/hpedam/documents/a00036000-6999/a00036491/a00036491enw.pdf.Google ScholarGoogle Scholar
  13. Yihe Huang, William Qian, Eddie Kohler, Barbara Liskov, and Liuba Shrira. 2020. Opportunities for Optimism in Contended Main-Memory Multicore Transactions. Proc. VLDB Endow. 13, 5 (Jan. 2020), 629--642. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Intel Corporation. 2019. Intel® 64 and IA-32 Architectures Software Developer's Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D and 4.Google ScholarGoogle Scholar
  15. Christopher Jonathan, Umar Farooq Minhas, James Hunter, Justin Levandoski, and Gor Nishanov. 2018. Exploiting Coroutines to Attack the "Killer Nanoseconds". Proc. VLDB Endow. 11, 11 (2018), 1702--1714. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Robert Kallman, Hideaki Kimura, Jonathan Natkins, Andrew Pavlo, Alexander Rasin, Stanley Zdonik, Evan P. C. Jones, Samuel Madden, Michael Stonebraker, Yang Zhang, John Hugg, and Daniel J. Abadi. 2008. H-Store: A High-Performance, Distributed Main Memory Transaction Processing System. Proc. VLDB Endow. 1, 2 (Aug. 2008), 1496--1499. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Timo Kersten, Viktor Leis, Alfons Kemper, Thomas Neumann, Andrew Pavlo, and Peter Boncz. 2018. Everything You Always Wanted to Know about Compiled and Vectorized Queries but Were Afraid to Ask. Proc. VLDB Endow. 11, 13 (Sept. 2018), 2209--2222. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Hideaki Kimura. 2015. FOEDUS: OLTP Engine for a Thousand Cores and NVRAM. In Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data. ACM, 691--706. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. H. T. Kung and John T. Robinson. 1981. On Optimistic Methods for Concurrency Control. ACM Trans. Database Syst. 6, 2 (June 1981), 213--226.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Tirthankar Lahiri and Markus Kissling. 2015. Oracle's In-Memory Database Strategy for OLTP and Analytics. https://www.doag.org/formes/pubfiles/7378967/2015-K-DB-Tirthankar_Lahiri-Oracle_s_In-Memory_Database_Strategy_for_Analytics_and_OLTP-Manuskript.pdf.Google ScholarGoogle Scholar
  21. Danica Porobic, Ippokratis Pandis, Miguel Branco, Pinar Tözün, and Anastasia Ailamaki. 2016. Characterization of the Impact of Hardware Islands on OLTP. The VLDB Journal 25, 5 (2016), 625--650. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Georgios Psaropoulos, Thomas Legler, Norman May, and Anastasia Ailamaki. 2019. Interleaving with Coroutines: A Systematic and Practical Approach to Hide Memory Latency in Index Joins. The VLDB Journal 28, 4 (2019), 451--471. Google ScholarGoogle ScholarCross RefCross Ref
  23. Iraklis Psaroudakis, Tobias Scheuer, Norman May, Abdelkader Sellami, and Anastasia Ailamaki. 2015. Scaling Up Concurrent Main-Memory Column-Store Scans: Towards Adaptive NUMA-aware Data and Task Placement. The Proceedings of the VLDB Endowment 8, 12 (2015), 1442--1453. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. The Transaction Processing Council. 2007. TPC-C Benchmark (Revision 5.9.0). http://www.tpc.org/tpcc/spec/tpcc_current.pdf.Google ScholarGoogle Scholar
  25. Stephen Tu, Wenting Zheng, Eddie Kohler, Barbara Liskov, and Samuel Madden. 2013. Speedy Transactions in Multicore In-Memory Databases. In ACM SIGOPS 24th Symposium on Operating Systems Principles, SOSP '13, Farmington, PA, USA, November 3-6, 2013. ACM, 18--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Vish Viswanathan, Karthik Kumar, Thomas Willhalm, Patrick Lu, Blazej Filipiak, and Sri Sakthivelu. 2020. Intel Memory Latency Checker v3.8. https://software.intel.com/en-us/articles/intelr-memory-latency-checker.Google ScholarGoogle Scholar
  27. Xiangyao Yu, George Bezerra, Andrew Pavlo, Srinivas Devadas, and Michael Stonebraker. 2014. Staring into the Abyss: An Evaluation of Concurrency Control with One Thousand Cores. Proc. VLDB Endow. 8, 3 (Nov. 2014), 209--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Xiangyao Yu, Andrew Pavlo, Daniel Sanchez, and Srinivas Devadas. 2016. Tic-Toc: Time Traveling Optimistic Concurrency Control. In Proceedings of the 2016 International Conference on Management of Data. Association for Computing Machinery, New York, NY, USA, 1629--1642. Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    DaMoN '20: Proceedings of the 16th International Workshop on Data Management on New Hardware
    June 2020
    127 pages
    ISBN:9781450380249
    DOI:10.1145/3399666

    Copyright © 2020 ACM

    Publication rights licensed to ACM. ACM acknowledges that this contribution was authored or co-authored by an employee, contractor or affiliate of a national government. As such, the Government retains a nonexclusive, royalty-free right to publish or reproduce this article, or to allow others to do so, for Government purposes only.

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 14 June 2020

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    DaMoN '20 Paper Acceptance Rate18of22submissions,82%Overall Acceptance Rate80of102submissions,78%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader