Unified Locality-Sensitive Signatures for Transactional Memory

  • Ricardo Quislant
  • Eladio D. Gutierrez
  • Oscar Plata
  • Emilio L. Zapata
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6852)


Transactional memory systems coordinate the execution of concurrent transactions by committing non-conflicting ones. Transaction conflicts are detected by recording on-the-fly the memory locations issued by the threads. Some implementations use two per-thread Bloom filters (signatures), one for reads and another for writes, for that purpose. Signatures summarize sets of memory addresses accessed inside a transaction in bounded hardware. However, fixed-sized hardware introduces the address aliasing problem that results in false positives during the conflict checking process.

It is known that the false positive rate increases with the size of the transactions, which has a strong negative impact in the performance of their concurrent execution. In a previous work, authors developed a technique with the aim of reducing the probability of false positives by exploiting spatial locality. In this paper we propose a new technique based on joining the two Bloom filters into a single one and partially sharing the hash function mappings for reads and writes. This unification technique is combined with the locality-sensitive one and it is proved that the false positive rate is further reduced.

This paper proves that unified locality-sensitive signatures improve the execution performance of large concurrent transactions in most tested codes compared to separate signatures, without increasing significantly the required hardware area and with a small increment of power consumption.


Hardware transactional memory memory locality signatures Bloom filters 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bloom, B.H.: Space/time trade-offs in hash coding with allowable errors. Communications of the ACM 13(7), 422–426 (1970)CrossRefzbMATHGoogle Scholar
  2. 2.
    Minh, C.C., Chung, J., Kozyrakis, C., Olukotun, K.: STAMP: Stanford Transactional Applications for Multi-Processing. In: IEEE Int’l Symp. on Workload Characterization (IISWC 2008), pp. 35–46 (2008)Google Scholar
  3. 3.
    Carter, L., Wegman, M.: Universal classes of hash functions. J. Computer and System Sciences 18(2), 143–154 (1979)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Ceze, L., Tuck, J., Montesinos, P., Torrellas, J.: BulkSC: Bulk enforcement of sequential consistency. In: 34th Ann. Int’l. Symp. on Computer Architecture (ISCA 2007), pp. 278–289 (2007)Google Scholar
  5. 5.
    Ceze, L., Tuck, J., Torrellas, J., Cascaval, C.: Bulk disambiguation of speculative threads in multiprocessors. In: 33th Ann. Int’l. Symp. on Computer Architecture (ISCA 2006), pp. 227–238 (2006)Google Scholar
  6. 6.
    Choi, W., Draper, J.: Locality-aware adaptive grain signatures for transactional memories. In: IEEE Int’l. Symp. on Parallel and Distributed Processing (IPDPS 2010), pp. 1–10 (2010)Google Scholar
  7. 7.
    Herlihy, M., Moss, J.E.B.: Transactional memory: Architectural support for lock-free data structures. In: 20th Ann. Int’l. Symp. on Computer Architecture (ISCA 1993), pp. 289–300 (1993)Google Scholar
  8. 8.
    Larus, J., Rajwar, R.: Transactional Memory. Morgan & Claypool Pub. (2007)Google Scholar
  9. 9.
    Magnusson, P.S., Christensson, M., Eskilson, J., Forsgren, D., Hallberg, G., Hogberg, J., Larsson, F., Moestedt, A., Werner, B., Werner, B.: Simics: A full system simulation platform. IEEE Computer 35(2), 50–58 (2002)CrossRefGoogle Scholar
  10. 10.
    Martin, M.M.K., Sorin, D.J., Beckmann, B.M., Marty, M.R., Xu, M., Alameldeen, A.R., Moore, K.E., Hill, M.D., Wood, D.A.: Multifacet’s general execution-driven multiprocessor simulator GEMS toolset. ACM SIGARCH Comput. Archit. News 33(4), 92–99 (2005)CrossRefGoogle Scholar
  11. 11.
    Mehrara, M., Hao, J., Hsu, P.-C., Mahlke, S.: Parallelizing sequential applications on commodity hardware using a low-cost software transactional memory. In: ACM SIGPLAN Conf. on Programming Language Design and Implementation (PLDI 2009), pp. 166–176 (2009)Google Scholar
  12. 12.
    Minh, C.C., Trautmann, M., Chung, J., McDonald, A., Bronson, N., Casper, J., Kozyrakis, C., Olukotun, K.: An effective hybrid transactional memory system with strong isolation guarantees. In: 34th Ann. Int’l. Symp. on Computer Architecture (ISCA 2007), pp. 69–80 (2007)Google Scholar
  13. 13.
    Muralimanohar, N., Balasubramonian, R., Jouppi, N.: CACTI 6.0: A tool to model large caches. Tech. Rep. HPL-2009-85, HP Laboratories (2009)Google Scholar
  14. 14.
    Quislant, R., Gutierrez, E., Plata, O., Zapata, E.: Improving signatures by locality exploitation for transactional memory. In: Int’l Conf. on Parallel Architectures and Compilation Techniques (PACT 2009), pp. 303–312 (2009)Google Scholar
  15. 15.
    Ramakrishna, M.V., Fu, E., Bahcekapili, E.: Efficient hardware hashing functions for high performance computers. IEEE Trans. on Computers 46(12), 1378–1381 (1997)CrossRefGoogle Scholar
  16. 16.
    Sanchez, D., Yen, L., Hill, M., Sankaralingam, K.: Implementing signatures for transactional memory. In: 40th Ann. IEEE/ACM Int’l Symp. on Microarchitecture (MICRO 2007), pp. 123–133 (2007)Google Scholar
  17. 17.
    Shriraman, A., Dwarkadas, S., Scott, M.L.: Flexible decoupled transactional memory support. In: 35th Ann. Int’l. Symp. on Computer Architecture (ISCA 2008), pp. 139–150 (2008)Google Scholar
  18. 18.
    Wilton, S.J.E., Jouppi, N.P.: CACTI: an enhanced cache access and cycle time model. IEEE Journal of Solid-State Circuits 31(5), 677 (1996)CrossRefGoogle Scholar
  19. 19.
    Yen, L., Bobba, J., Marty, M.R., Moore, K.E., Volos, H., Hill, M.D., Swift, M.M., Wood, D.A.: LogTM-SE: Decoupling hardware transactional memory from caches. In: 13th Int’l. Symp. on High-Performance Computer Architecture (HPCA 2007), pp. 261–272 (2007)Google Scholar
  20. 20.
    Yen, L., Draper, S.C., Hill, M.D.: Notary: Hardware techniques to enhance signatures. In: 41st Ann. IEEE/ACM Int’l Symp. on Microarchitecture (MICRO 2008), pp. 234–245 (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Ricardo Quislant
    • 1
  • Eladio D. Gutierrez
    • 1
  • Oscar Plata
    • 1
  • Emilio L. Zapata
    • 1
  1. 1.Department of Computer ArchitectureUniversity of Málaga, ETSI InformáticaMálagaSpain

Personalised recommendations