Abstract
Because of hardware TM limitations, software fallbacks are the only way to make TM algorithms guarantee progress. Nevertheless, all known software fallbacks to date, from simple locks to sophisticated versions of the NOrec Hybrid TM algorithm, have either limited scalability or weakened semantics. We propose a novel reduced-hardware (RH) version of the NOrec HyTM algorithm. Instead of an all-software slow path, in our RH NOrec the slow-path is a "mix" of hardware and software: one short hardware transaction executes a maximal amount of initial reads in the hardware, and the second executes all of the writes. This novel combination of the RH approach and the NOrec algorithm delivers the first Hybrid TM that scales while fully preserving the hardware's original semantics of opacity and privatization.
Our GCC implementation of RH NOrec is promising in that it shows improved performance relative to all prior methods, at the concurrency levels we could test today.
- A. Adl-Tabatabai, T. Shpeisman, and J. Gottschlich. Draft specification of transactional language constructs for c++, 2012. URL https://sites.google.com/site/tmforcplusplus.Google Scholar
- D. Alistarh, P. Eugster, M. Herlihy, A. Matveev, and N. Shavit. Stacktrack: an automated transactional approach to concurrent memory reclamation. In D. C. A. Bulterman, H. Bos, A. I. T. Rowstron, and P. Druschel, editors, EuroSys, page 25. ACM, 2014. ISBN 978-1-4503-2704-6. Google Scholar
Digital Library
- H. W. Cain, M. M. Michael, B. Frey, C. May, D. Williams, and H. Le. Robust architectural support for transactional memory in the power architecture. In ISCA, pages 225--236, 2013. Google Scholar
Digital Library
- I. Calciu, J. Gottschlich, T. Shpeisman, G. Pokam, and M. Herlihy. Invyswell: a hybrid transactional memory for haswell's restricted transactional memory. In J. N. Amaral and J. Torrellas, editors, International Conference on Parallel Architectures and Compilation, PACT '14, Edmonton, AB, Canada, August 24-27, 2014, pages 187--200. ACM, 2014. ISBN 978-1-4503-2809-8. . URL http://doi.acm.org/10.1145/2628071.2628086. Google Scholar
Digital Library
- D. Christie, J.-W. Chung, S. Diestelhorst, M. Hohmuth, M. Pohlack, C. Fetzer, M. Nowack, T. Riegel, P. Felber, P. Marlier, and E. Riviere. Evaluation of amd's advanced synchronization facility within a complete transactional memory stack. In Proceedings of the 5th European conference on Computer systems, pages 27--40, New York, NY, USA, 2010. ACM. Google Scholar
Digital Library
- L. Dalessandro, M. F. Spear, and M. L. Scott. Norec: streamlining stm by abolishing ownership records. In Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP '10, pages 67--78, New York, NY, USA, 2010. ACM. ISBN 978-1-60558-877-3. . URL http://doi.acm.org/10.1145/1693453.1693464. Google Scholar
Digital Library
- 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. SIGPLAN Not., 46(3):39--52, Mar. 2011. ISSN 0362-1340. URL http://doi.acm.org/10.1145/1961296.1950373. Google Scholar
Digital Library
- P. Damron, A. Fedorova, Y. Lev, V. Luchangco, M. Moir, and D. Nussbaum. Hybrid transactional memory. SIGPLAN Not., 41(11):336--346, Oct. 2006. ISSN 0362-1340. . URL http://doi.acm.org/10.1145/1168918.1168900. Google Scholar
Digital Library
- D. Dice, O. Shalev, and N. Shavit. Transactional locking II. In Proc. of the 20th International Symposium on Distributed Computing (DISC 2006), pages 194--208, 2006. Google Scholar
Digital Library
- D. Dice, T. L. Harris, A. Kogan, Y. Lev, and M. Moir. Hardware extensions to make lazy subscription safe. CoRR, abs/1407.6968, 2014.Google Scholar
- N. Diegues and P. Romano. Self-tuning intel transactional synchronization extensions. In 11th International Conference on Autonomic Computing (ICAC 14), pages 209--219, Philadelphia, PA, June 2014. USENIX Association. ISBN 978-1-931971-11-9.Google Scholar
- google-perftools. Tcmalloc : Thread-caching malloc, 2014. URL http://goog-perftools.sourceforge.net/doc/tcmalloc.html.Google Scholar
- R. Guerraoui and M. Kapalka. On the correctness of transactional memory. In PPoPP '08: Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, pages 175--184, New York, NY, USA, 2008. ACM. ISBN 978-1-59593-795-7. Google Scholar
Digital Library
- Intel. Transactional synchronization in haswell, 2012. URL https://software.intel.com/en-us/blogs/2012/02/07/transactional-synchronization-in-haswell.Google Scholar
- S. Kumar, M. Chu, C. J. Hughes, P. Kundu, and A. Nguyen. Hybrid transactional memory. In Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming, PPoPP '06, pages 209--220, New York, NY, USA, 2006. ACM. ISBN 1-59593-189-9. . URL http://doi.acm.org/10.1145/1122971.1123003. Google Scholar
Digital Library
- Y. Lev, M. Moir, and D. Nussbaum. Phtm: Phased transactional memory. In In Workshop on Transactional Computing (Transact), 2007. research.sun.com/scalable/pubs/TRANSACT2007PhTM.pdf, 2007.Google Scholar
- V. Marathe, M. Spear, and M. Scott. Scalable techniques for transparent privatization in software transactional memory. Parallel Processing, International Conference on, 0:67--74, 2008. ISSN 0190-3918. Google Scholar
Digital Library
- A. Matveev and N.Shavit. Reduced hardware transactions: a new approach to hybrid transactional memory. In SPAA, pages 11--22, 2013. Google Scholar
Digital Library
- T. Riegel, P. Marlier, M. Nowack, P. Felber, and C. Fetzer. Optimizing hybrid transactional memory: the importance of nonspeculative operations. In Proceedings of the 23rd ACM symposium on Parallelism in algorithms and architectures, SPAA '11, pages 53--64, New York, NY, USA, 2011. ACM. ISBN 978-1-4503-0743-7. . URL http://doi.acm.org/10.1145/1989493.1989501. Google Scholar
Digital Library
- W. Ruan, Y. Liu, and M. Spear. Stamp need not be considered harmful. In TRANSACT 2014 Workshop, Salt Lake City, Utah, USA, 2014.Google Scholar
- R. M. Yoo, C. J. Hughes, K. Lai, and R. Rajwar. Performance evaluation of intel transactional synchronization extensions for high-performance computing. In Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, SC '13, pages 19:1--19:11, New York, NY, USA, 2013. ACM. ISBN 978-1-4503-2378-9. URL http://doi.acm.org/10.1145/2503210.2503232. Google Scholar
Digital Library
Index Terms
Reduced Hardware NOrec: A Safe and Scalable Hybrid Transactional Memory
Recommendations
NOrec: streamlining STM by abolishing ownership records
PPoPP '10Drawing inspiration from several previous projects, we present an ownership-record-free software transactional memory (STM) system that combines extremely low overhead with unusually clean semantics. While unlikely to scale to hundreds of active threads,...
Hybrid NOrec: a case study in the effectiveness of best effort hardware transactional memory
ASPLOS '11Transactional memory (TM) is a promising synchronization mechanism for the next generation of multicore processors. Best-effort Hardware Transactional Memory (HTM) designs, such as Sun's prototype Rock processor and AMD's proposed Advanced ...
Reduced Hardware NOrec: A Safe and Scalable Hybrid Transactional Memory
ASPLOS '15: Proceedings of the Twentieth International Conference on Architectural Support for Programming Languages and Operating SystemsBecause of hardware TM limitations, software fallbacks are the only way to make TM algorithms guarantee progress. Nevertheless, all known software fallbacks to date, from simple locks to sophisticated versions of the NOrec Hybrid TM algorithm, have ...







Comments