skip to main content
10.1145/1995896.1995905acmconferencesArticle/Chapter ViewAbstractPublication PagesicsConference Proceedingsconference-collections
research-article

Multiset signatures for transactional memory

Published: 31 May 2011 Publication History

Abstract

Transactional Memory (TM) systems must record the memory locations read and written (read and write sets) by concurrent transactions in order to detect conflicts. Some TM implementations use signatures for this purpose, which summarize read and write sets in bounded hardware at the cost of false positives (detection of non-existing conflicts).
Read/write signatures are usually implemented as two separate Bloom filters with the same size. In contrast, transactions usually exhibit read/write sets of uneven cardinality, where read sets use to be larger than write sets. Thus, the read filter populates earlier than the write one and, consequently the read signature false positive rate may be high while the write filter has still a low occupation.
In this paper, a multiset signature design is proposed which records both the read and write sets in the same Bloom filter without adding significant hardware complexity. Several designs of multiset signatures are analyzed and evaluated. New problems arise related to hardware complexity and the existence of cross false positives, i.e. new false positives coming from the fact that both sets share the same filter. Additionally, multiset signatures are enhanced using locality-sensitive hashing, proposed by the authors in a previous work. Experimental results show that the multiset approach is able to reduce the false positive rate and improve the execution performance in most of the tested codes, without increasing the required hardware area in a noticeable amount.

References

[1]
A. R. Alameldeen and D. A. Wood. Variability in architectural simulations of multi-threaded workloads. In 9th Int'l Symp. on High-Performance Computer Architecture (HPCA'03), pages 7--18, 2003.
[2]
C. Ananian, K. Asanovic, B. Kuszmaul, C. Leiserson, and S. Lie. Unbounded transactional memory. In 11th Int'l. Symp. on High-Performance Computer Architecture (HPCA'05), pages 316--327, 2005.
[3]
B. Bloom. Space/time trade-offs in hash coding with allowable errors. Communications of the ACM, 13(7):422--426, 1970.
[4]
L. Carter and M. Wegman. Universal classes of hash functions. J. Computer and System Sciences, 18(2):143--154, 1979.
[5]
L. Ceze, J. Tuck, P. Montesinos, and J. Torrellas. BulkSC: Bulk enforcement of sequential consistency. In 34th Ann. Int'l. Symp. on Computer Architecture (ISCA'07), pages 278--289, 2007.
[6]
L. Ceze, J. Tuck, J. Torrellas, and C. Cascaval. Bulk disambiguation of speculative threads in multiprocessors. In 33th Ann. Int'l. Symp. on Computer Architecture (ISCA'06), pages 227--238, 2006.
[7]
W. Choi and J. Draper. Locality-aware adaptive grain signatures for transactional memories. In IEEE Int'l. Symp. on Parallel and Distributed Processing (IPDPS'10), pages 1--10, 2010.
[8]
D. Dice, Y. Lev, M. Moir, and D. Nussbaum. Early experience with a commercial hardware transactional memory implementation. In 14th Int'l. Conf. on Architectural Support for Programming Language and Operating Systems (ASPLOS'09), pages 157--168, 2009.
[9]
D. Geer. Industry trends: Chip makers turn to multicore processors. IEEE Computer, 38(5):11--13, 2005.
[10]
L. Hammond, V. Wong, M. Chen, B. Carlstrom, J. Davis, B. Hertzberg, M. Prabhu, H. Wijaya, C. Kozyrakis, and K. Olukotun. Transactional memory coherence and consistency. In 31th Ann. Int'l. Symp. on Computer Architecture (ISCA'04), pages 102--113, 2004.
[11]
M. Herlihy and J. Moss. Transactional memory: Architectural support for lock-free data structures. In 20th Ann. Int'l. Symp. on Computer Architecture (ISCA'93), pages 289--300, 1993.
[12]
M. Labrecque, M. Jeffrey, and J. Gregory Steffan. Application-specific signatures for transactional memory in soft processors. In 6th Int'l. Symp. on Applied Reconfigurable Computing (ARC'10), 2010.
[13]
J. Larus and R. Rajwar. Transactional Memory. Morgan & Claypool Pub., 2007.
[14]
P. Magnusson, M. Christensson, J. Eskilson, D. Forsgren, G. Hallberg, J. Hogberg, F. Larsson, A. Moestedt, B. Werner, and B. Werner. Simics: A full system simulation platform. IEEE Computer, 35(2):50--58, 2002.
[15]
M. Martin, D. Sorin, B. Beckmann, M. Marty, M. Xu, A. Alameldeen, K. Moore, M. Hill, and D. Wood. Multifacet's general execution-driven multiprocessor simulator GEMS toolset. ACM SIGARCH Comput. Archit. News, 33(4):92--99, 2005.
[16]
M. Mehrara, J. Hao, P.-C. Hsu, and S. Mahlke. Parallelizing sequential applications on commodity hardware using a low-cost software transactional memory. In ACM SIGPLAN Conf. on Programming Language Design and Implementation (PLDI'09), pages 166--176, 2009.
[17]
C. Minh, J. Chung, C. Kozyrakis, and K. Olukotun. STAMP: Stanford Transactional Applications for Multi-Processing. In IEEE Int'l Symp. on Workload Characterization (IISWC'08), pages 35--46, 2008.
[18]
C. Minh, M. Trautmann, J. Chung, A. McDonald, N. Bronson, J. Casper, C. Kozyrakis, and K. Olukotun. An effective hybrid transactional memory system with strong isolation guarantees. In 34th Ann. Int'l. Symp. on Computer Architecture (ISCA'07), pages 69--80, 2007.
[19]
K. Moore, J. Bobba, M. Moravan, M. Hill, and D. Wood. Log™: Log-based transactional memory. In 12th Int'l. Symp. on High-Performance Computer Architecture (HPCA'06), pages 254--265, 2006.
[20]
N. Muralimanohar, R. Balasubramonian, and N. Jouppi. CACTI 6.0: A tool to model large caches. Technical Report HPL-2009-85, HP Laboratories, 2009.
[21]
R. Quislant, E. Gutierrez, O. Plata, and E. Zapata. Improving signatures by locality exploitation for transactional memory. In Int'l Conf. on Parallel Architectures and Compilation Techniques (PACT'09), pages 303--312, 2009.
[22]
R. Rajwar, M. Herlihy, and K. Lai. Virtualizing transactional memory. In 32th Ann. Int'l. Symp. on Computer Architecture (ISCA'05), pages 494--505, 2005.
[23]
M. V. Ramakrishna, E. Fu, and E. Bahcekapili. Efficient hardware hashing functions for high performance computers. IEEE Trans. on Computers, 46(12):1378--1381, 1997.
[24]
B. Saha, A.-R. Adl-Tabatabai, and Q. Jacobson. Architectural support for software transactional memory. In 39st Ann. IEEE/ACM Int'l Symp. on Microarchitecture (MICRO'06), pages 185--196, 2006.
[25]
D. Sanchez, L. Yen, M. Hill, and K. Sankaralingam. Implementing signatures for transactional memory. In 40th Ann. IEEE/ACM Int'l Symp. on Microarchitecture (MICRO'07), pages 123--133, 2007.
[26]
A. Shriraman, S. Dwarkadas, and M. Scott. Flexible decoupled transactional memory support. In 35th Ann. Int'l. Symp. on Computer Architecture (ISCA'08), pages 139--150, 2008.
[27]
A. Shriraman, M. Spear, H. Hossain, V. Marathe, S. Dwarkadas, and M. Scott. An integrated hardware-software approach to flexible transactional memory. In 34th Ann. Int'l. Symp. on Computer Architecture (ISCA'07), pages 104--115, 2007.
[28]
S. Tomic, C. Perfumo, C. Kulkarni, A. Armejach, A. Cristal, O. Unsal, T. Harris, and M. Valero. EazyH™: Eager-lazy hardware transactional memory. In 42st Ann. IEEE/ACM Int'l Symp. on Microarchitecture (MICRO'09), pages 145--155, 2009.
[29]
S. Wilton and N. Jouppi. CACTI: an enhanced cache access and cycle time model. IEEE Journal of Solid-State Circuits, 31(5):677--688, 1996.
[30]
L. Yen, J. Bobba, M. Marty, K. Moore, H. Volos, M. Hill, M. Swift, and D. Wood. LogTM-SE: Decoupling hardware transactional memory from caches. In 13th Int'l. Symp. on High-Performance Computer Architecture (HPCA'07), pages 261--272, 2007.
[31]
L. Yen, S. Draper, and M. Hill. Notary: Hardware techniques to enhance signatures. In 41st Ann. IEEE/ACM Int'l Symp. on Microarchitecture (MICRO'08), pages 234--245, 2008.

Cited By

View all
  • (2015)Conflict Detection in Hardware Transactional MemoryTransactional Memory. Foundations, Algorithms, Tools, and Applications10.1007/978-3-319-14720-8_6(127-149)Online publication date: 2015
  • (2015)Hardware Approaches to Transactional Memory in Chip MultiprocessorsHandbook on Data Centers10.1007/978-1-4939-2092-1_27(805-835)Online publication date: 17-Mar-2015
  • (2013)Improving Utilization of Hardware Signatures in Transactional MemoryIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2012.29224:11(2230-2239)Online publication date: 1-Nov-2013
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICS '11: Proceedings of the international conference on Supercomputing
May 2011
398 pages
ISBN:9781450301022
DOI:10.1145/1995896
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 ACM 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: 31 May 2011

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. bloom filters
  2. h3 hashing
  3. hardware transactional memory
  4. locality of reference
  5. signatures

Qualifiers

  • Research-article

Conference

ICS '11
Sponsor:
ICS '11: International Conference on Supercomputing
May 31 - June 4, 2011
Arizona, Tucson, USA

Acceptance Rates

Overall Acceptance Rate 629 of 2,180 submissions, 29%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2015)Conflict Detection in Hardware Transactional MemoryTransactional Memory. Foundations, Algorithms, Tools, and Applications10.1007/978-3-319-14720-8_6(127-149)Online publication date: 2015
  • (2015)Hardware Approaches to Transactional Memory in Chip MultiprocessorsHandbook on Data Centers10.1007/978-1-4939-2092-1_27(805-835)Online publication date: 17-Mar-2015
  • (2013)Improving Utilization of Hardware Signatures in Transactional MemoryIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2012.29224:11(2230-2239)Online publication date: 1-Nov-2013
  • (2013)Hardware Signature Designs to Deal with Asymmetry in Transactional Data SetsIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2012.13824:3(506-519)Online publication date: 1-Mar-2013
  • (2013)Efficient Eager Management of Conflicts for Scalable Hardware Transactional MemoryIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2012.10324:1(59-71)Online publication date: 1-Jan-2013
  • (2013)DDASTM: Ensuring Conflict Serializability Efficiently in Distributed STMGrid and Pervasive Computing10.1007/978-3-642-38027-3_35(326-335)Online publication date: 2013
  • (2012)SnCTMProceedings of the 9th conference on Computing Frontiers10.1145/2212908.2212919(65-74)Online publication date: 15-May-2012

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