skip to main content
research-article

Persistent hybrid transactional memory for databases

Published:01 November 2016Publication History
Skip Abstract Section

Abstract

Processors with hardware support for transactional memory (HTM) are rapidly becoming commonplace, and processor manufacturers are currently working on implementing support for upcoming non-volatile memory (NVM) technologies. The combination of HTM and NVM promises to be a natural choice for in-memory database synchronization. However, limitations on the size of hardware transactions and the lack of progress guarantees by modern HTM implementations prevent some applications from obtaining the full benefit of hardware transactional memory. In this paper, we propose a persistent hybrid TM algorithm called PHyTM for systems that support NVM and HTM. PHyTM allows hardware assisted ACID transactions to execute concurrently with pure software transactions, which allows applications to gain the benefit of persistent HTM while simultaneously accommodating unbounded transactions (with a high degree of concurrency). Experimental simulations demonstrate that PHyTM is fast and scalable for realistic workloads.

References

  1. H. Avni and T. Brown. Persistent hybrid transactional memory for databases. Manuscript available from http://phytm.tbrown.pro.Google ScholarGoogle Scholar
  2. H. Avni, E. Levy, and A. Mendelson. Hardware transactions in nonvolatile memory. In Proc. of 29th Int. Sym., DISC 2015, pages 617--630. Springer, 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. T. Brown. Brief announcement: Faster data structures in transactional memory using three paths. In Proceedings of the 25th ACM Symposium on Distributed Computing, pages 671--672. Springer-Verlag Berlin Heidelberg, 2015.Google ScholarGoogle Scholar
  4. Y. Chen, X. Wei, J. Shi, R. Chen, and H. Chen. Fast and general distributed transactions using RDMA and HTM. In Proceedings of the 12th European Conf. on Comp. Systems, EuroSys 2016, London, United Kingdom, April 18--21, 2016, pages 26:1--26:17, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. J. Coburn, A. M. Caulfield, A. Akel, L. M. Grupp, R. K. Gupta, R. Jhala, and S. Swanson. Nv-heaps: Making persistent objects fast and safe with next-generation, non-volatile memories. In Proceedings of the 16th International Conference, ASPLOS, pages 105--118, New York, NY, USA, 2011. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. L. Dalessandro, F. Carouge, S. White, Y. Lev, M. Moir, M. L. Scott, and M. F. Spear. Hybrid norec: a case study in the effectiveness of best effort hardware transactional memory. In Proc. of 16th Int. Conf. on Arch. Supp. for Prog. Lang. and Oper. Sys., ASPLOS 2011, Newport Beach, CA, USA, March 5-11, 2011, pages 39--52, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. P. Damron, A. Fedorova, Y. Lev, V. Luchangco, M. Moir, and D. Nussbaum. Hybrid transactional memory. In Proc. of 12th Int. Conf. on Arch. Supp. for Prog. Lang. and Oper. Sys., ASPLOS 2006, San Jose, CA, USA, October 21--25, 2006, pages 336--346, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Dice, O. Shalev, and N. Shavit. Transactional locking II. In Distr. Comp., volume 4167 of Lec. Notes in Comp. Sci., pages 194--208. Springer Berlin Heidelberg, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. P. Felber, C. Fetzer, and T. Riegel. Dynamic performance tuning of word-based software transactional memory. In PPoPP '08: Proceedings of the 13th ACM SIGPLAN Sym. on Principles and Practice of Par. Prog., pages 237--246. ACM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. R. Guerraoui and M. Kapalka. On the correctness of transactional memory. In Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, pages 175--184. ACM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. Herlihy and J. E. B. Moss. Transactional memory: Architectural support for lock-free data structures. In Proc. of 20th Int. Sym. on Comp. Arch., ISCA '93, pages 289--300, New York, NY, USA, 1993. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Y. Huai. Spin-transfer torque MRAM (STT-MRAM): Challenges and prospects. AAPPS Bull., 18(6), 2008.Google ScholarGoogle Scholar
  13. Intel. Intel architecture instruction set extensions programming reference.Google ScholarGoogle Scholar
  14. Intel. Private communication with hardware engineers, February 2016.Google ScholarGoogle Scholar
  15. T. Karnagel, R. Dementiev, R. Rajwar, K. Lai, T. Legler, B. Schlegel, and W. Lehner. Improving in-memory database index performance with intel® transactional synchronization extensions. In 2014 IEEE 20th Int. Sym. on High Perf. Comp. Arch. (HPCA), pages 476--487. IEEE, 2014.Google ScholarGoogle Scholar
  16. S. Kumar, M. Chu, C. J. Hughes, P. Kundu, and A. D. Nguyen. Hybrid transactional memory. In Proc. of the ACM SIGPLAN Sym. on Principles and Practice of Parallel Programming, PPOPP 2006, New York, New York, USA, March 29--31, 2006, pages 209--220, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. B. C. Lee, P. Zhou, J. Yang, Y. Zhang, B. Zhao, E. Ipek, O. Mutlu, and D. Burger. Phase-change technology and the future of main memory. IEEE Micro, 30(1):143, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. V. Leis, A. Kemper, and T. Neumann. Exploiting hardware transactional memory in main-memory databases. In IEEE 30th International Conference on Data Engineering, Chicago, ICDE 2014, IL, USA, March 31 - April 4, 2014, pages 580--591, 2014.Google ScholarGoogle ScholarCross RefCross Ref
  19. A. Matveev and N. Shavit. Reduced hardware norec: A safe and scalable hybrid transactional memory. In Proc. of the 20th Int. Conf. on Arch. Supp. for Prog. Lang. and Oper. Sys., ASPLOS '15, pages 59--71, New York, NY, USA, 2015. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. D. Narayanan and O. Hodson. Whole-system persistence. SIGPLAN Not., 47(4):401--410, Mar. 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. T. Riegel, P. Marlier, M. Nowack, P. Felber, and C. Fetzer. Optimizing hybrid transactional memory: the importance of nonspeculative operations. In SPAA 2011: Proc. of the 23rd ACM Sym. on Par. in Alg. and Arch., San Jose, CA, USA, June 4--6, 2011 (Co-located with FCRC 2011), pages 53--64, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. D. Schwalb, M. Faust, M. Dreseler, P. Flemming, and H. Plattner. Leveraging non-volatile memory for instant restarts of in-memory database systems. In 2016 IEEE 32nd International Conference on Data Engineering (ICDE), pages 1386--1389. IEEE, 2016.Google ScholarGoogle ScholarCross RefCross Ref
  23. D. B. Strukov, G. S. Snider, D. R. Stewart, and R. S. Williams. The missing memristor found. Nature, 453(7191):80--83, May 2008.Google ScholarGoogle ScholarCross RefCross Ref
  24. H. Volos, A. J. Tack, and M. M. Swift. Mnemosyne: Lightweight persistent memory. SIGPLAN Not., 47(4):91--104, Mar. 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Z. Wang, H. Qian, J. Li, and H. Chen. Using restricted transactional memory to build a scalable in-memory database. In Proceedings of the 9th European Conference on Computer Systems, EuroSys '14, pages 26:1--26:15, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Z. Wang, H. Yi, R. Liu, M. Dong, and H. Chen. Persistent transactional memory. Computer Architecture Letters, 14(1):58--61, 2015.Google ScholarGoogle ScholarCross RefCross Ref
  27. X. Yu, G. Bezerra, A. Pavlo, S. Devadas, and M. Stonebraker. Staring into the abyss: An evaluation of concurrency control with one thousand cores. Proc. VLDB Endow., 8(3):209--220, Nov. 2014. 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

Full Access

  • Published in

    cover image Proceedings of the VLDB Endowment
    Proceedings of the VLDB Endowment  Volume 10, Issue 4
    November 2016
    180 pages
    ISSN:2150-8097
    Issue’s Table of Contents

    Publisher

    VLDB Endowment

    Publication History

    • Published: 1 November 2016
    Published in pvldb Volume 10, Issue 4

    Qualifiers

    • research-article

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader