Configurable Version Management Hardware Transactional Memory for Multi-processor Platform

Jeevan Sirkunan, Chia Yee Ooi, N. Shaikh Husin, Yuan Wen Hau, Trias Andromeda, M. N. Marsono

Abstract


Programming on a shared memory multi-processor platforms in an efficient way is difficult as locked based synchronization limits the efficiency. Transactional memory (TM) is a promising approach in creating an abstraction layer for multi-threaded programming. However, the performance of TM is application-specific. In general, the configuration of a TM is divided into version management and conflict management. Each scheme has its strengths and weaknesses depending on executing application. Previous TM implementations for embedded system were built on fixed version management configuration which results in significant performance loss when transaction behaviour changes. In this paper, we propose a hardware transactional memory (HTM) with interchangeable version management. Random requests at different contention levels are used to verify the performance of the proposed TM. The proposed architecture is targeted for embedded applications and is area-efficient compared to current implementations that apply cache coherence protocols.

Keywords


Hardware transactional memor; Embedded system; Multi-processor

References


M.L. Navazo, “Hardware approaches for transactional memory,” M.Sc.Thesis, Technical University of Catalonia, 2008.

C. J. Rossbach, O. S. Hofmann, and E. Witchel, “Is transactional programming actually easier?” in Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, Bangalore, India, Jan 2010, pp. 47–56.

M. Herlihy and J. E. B. Moss, “Transactional memory: Architectural support for lock-free data structures,” SIGARCH Comput. Archit. News, vol. 21, no. 2, pp. 289–300, May 1993.

L. Hammond, V. Wong, M. Chen, B. D. Carlstrom, J. D. Davis, B. Hertzberg, M. K. Prabhu, H. Wijaya, C. Kozyrakis, and K. Olukotun, “Transactional memory coherence and consistency,” SIGARCH Comput. Archit. News, vol. 32, no. 2, Mar 2004.

C. S. Ananian, K. Asanovic, B. C. Kuszmaul, C. E. Leiserson, and S. Lie, “Unbounded transactional memory,” in Proceedings of the 11th International Symposium on High-Performance Computer Architecture, Washington, DC, USA, Feb 2005, pp. 316–327.

L. Yen, “Signatures in transactional memory systems,” Ph.D. Dissertation, University of Wisconsin, 2009.

M. Lupon, G. Magklis, and A. Gonz´alez, “A dynamically adaptable hardware transactional memory,” in Proceedings of the 43rd Annual

IEEE/ACM International Symposium on Microarchitecture, Dec 2010, pp. 27–38.

C. Kachris and C. Kulkarni, “Transactional memories for multiprocessor FPGA platforms,” Journal of Systems Architecture, vol. 57, no. 1, pp. 160–168, Jan 2011.

M. Labrecque and J. G. Steffan, “The case for hardware transactional memory in software packet processing,” in Proceedings of the 6th ACM/IEEE Symposium on Architectures for Networking and Communications Systems, La Jolla, California, USA, Oct 2010, p. 37.

C. Ferri, S. Wood, T. Moreshet, R. I. Bahar, and M. Herlihy, “Embedded-TM: Energy and complexity-effective hardware transactional memory for embedded multicore systems,” Journal of Parallel and Distributed Computing, vol. 70, no. 10, pp. 1042–1052, Oct 2010.

N. Shavit and D. Touitou, “Software transactional memory,” in Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing, Ottowa, Ontario, Canada, Aug 1995, pp. 204–213.

A. Shriraman, S. Dwarkadas, and M. L. Scott, “Flexible decoupled transactional memory support,” in Proceedings of the 35th Annual International Symposium on Computer Architecture, Beijing, China, June 2008, pp. 139–150.

R. Titos-Gil, A. Negi, M. Acacio, J. Garcia, and P. Stenstrom, “ZEBRA: Data-centric contention management in hardware transactional memory,” IEEE Transactions on Parallel and Distributed Systems, vol. 25, no. 5, pp. 1359–1369, May 2014.

N. Njoroge, J. Casper, S. Wee, Y. Teslyar, D. Ge, C. Kozyrakis, and K. Olukotun, “ATLAS: A chip-multiprocessor with transactional memory support,” in Proceedings of the Conference on Design, Automation and Test in Europe, Nice, France, Apr 2007, pp. 3–8.

M. Schoeberl and P. Hilber, “Design and implementation of realtime transactional memory,” in Proceedings of the 20th International Conference on Field Programmable Logic and Applications (FPL), Milan,Lombardy,Italy, Aug/Sept 2010, pp. 279–284.

M. Herlihy, V. Luchangco, M. Moir, and W. N. Scherer III, “Software transactional memory for dynamic-sized data structures,” in Proceedings of the 22nd Annual Symposium on Principles of Distributed Computing, Boston, MA, USA, July 2003, pp. 92–101.

J. Bobba, K. E. Moore, H. Volos, L. Yen, M. D. Hill, M. M. Swift, and D. A. Wood, “Performance pathologies in hardware transactional memory.” in Proceedings of the 34th Annual International Symposium on Computer architecture (ISCA), New York, NY, USA, June 2007, pp. 81–91.


Full Text: PDF

Refbacks

  • There are currently no refbacks.