Skip to main content
Erschienen in: Computing 6/2015

01.06.2015

TurboLock: increasing associativity of lock table in transactional memory

verfasst von: Amir Ghanbari Bavarsad, Ehsan Atoofian

Erschienen in: Computing | Ausgabe 6/2015

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Transactional memory (TM) is emerging as a promising paradigm to simplify parallel programming for chip multiprocessors. Most of software transactional memory (STM) systems exploit a lock table to synchronize transactional accesses to the shared memory locations. Memory addresses map to entries of the lock table through a hash function to detect conflicts in the event of simultaneous accesses to the shared memory locations. In the current implementation of the lock table, if two distinct addresses map to the same entry of the table, they are treated as a conflict even though there is no true conflict between the two addresses. This is called false conflict. In the event of a false conflict, transactions are aborted conservatively which reduces concurrency level in programs. In this paper, we study false conflicts in STMs and propose TurboLock to reduce frequency of false conflicts. Inspired by set associative caches, TurboLock increases associativity of the lock table to reduce likelihood of aliasing-induced conflicts. While TurboLock is effective in reducing the false conflicts, it may degrade performance due to overhead of the associative lock table in software. To improve performance of TurboLock, we propose HW-TurboLock which exploits hardware to reduce overhead of the associative lock table. We have evaluated our optimization techniques using Gem5 full-system simulator and compared the performance of the new implementation with the baseline scheme. Our simulation results reveal that HW-TurboLock is highly effective and significantly improves performance of TM systems.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Herlihy M, Moss JEB (1993) Transactional memory: architectural support for lock-free data structures. In: Proceedings of the twentieth, annual international symposium on computer architecture, 1993 Herlihy M, Moss JEB (1993) Transactional memory: architectural support for lock-free data structures. In: Proceedings of the twentieth, annual international symposium on computer architecture, 1993
2.
Zurück zum Zitat Herlihy M, Wing J (1990) Linearizability: a correctness condition for concurrent objects. ACM Trans Program Lang Syst 12(3):463–492CrossRef Herlihy M, Wing J (1990) Linearizability: a correctness condition for concurrent objects. ACM Trans Program Lang Syst 12(3):463–492CrossRef
3.
Zurück zum Zitat Dice D, Shalev O, Shavit N (2006) Transactional locking II. In: Proceedings of the 20th international symposium on distributed computing, pp 194–208, Sept 2006 Dice D, Shalev O, Shavit N (2006) Transactional locking II. In: Proceedings of the 20th international symposium on distributed computing, pp 194–208, Sept 2006
4.
Zurück zum Zitat Minh CC, Trautmann M, Chung J, McDonald A, Bronson N, Casper J, Kozyrakis C, Olukotun K (2007) An effective hybrid transactional memory system with strong isolation guarantees. In: Proceedings of international symposium on computer architecture, June 2007 Minh CC, Trautmann M, Chung J, McDonald A, Bronson N, Casper J, Kozyrakis C, Olukotun K (2007) An effective hybrid transactional memory system with strong isolation guarantees. In: Proceedings of international symposium on computer architecture, June 2007
5.
Zurück zum Zitat Intel Corp. (2012) Intel Architecture Instruction Set Extensions Programming Reference, 319433–012a edition Intel Corp. (2012) Intel Architecture Instruction Set Extensions Programming Reference, 319433–012a edition
6.
Zurück zum Zitat Chung J, Yen L, Diestelhorst S, Pohlack M, Hohmuth M, Grossman D, Christie D (2010) ASF: AMD64 extension for lock-free data structures and transactional memory. In: Proceedings of MICRO, Atlanta, Dec 2010 Chung J, Yen L, Diestelhorst S, Pohlack M, Hohmuth M, Grossman D, Christie D (2010) ASF: AMD64 extension for lock-free data structures and transactional memory. In: Proceedings of MICRO, Atlanta, Dec 2010
7.
Zurück zum Zitat Dragojevi’c A, Guerraoui R, Kapalka M (2009) Stretching transactional memory. In: Proceedings of the 2009 ACM SIGPLAN conference on programming language design and implementation, June 2009 Dragojevi’c A, Guerraoui R, Kapalka M (2009) Stretching transactional memory. In: Proceedings of the 2009 ACM SIGPLAN conference on programming language design and implementation, June 2009
8.
Zurück zum Zitat Adl-Tabatabai AR, Lewis BT, Menon V, Murphy BR, Saha B, Shpeisman T (2006) Compiler and runtime support for efficient software transactional memory. In: Proceedings of the 2006 ACM SIGPLAN conference on programming language design and implementation (PLDI ’06). ACM Press, New York, pp 26–37 Adl-Tabatabai AR, Lewis BT, Menon V, Murphy BR, Saha B, Shpeisman T (2006) Compiler and runtime support for efficient software transactional memory. In: Proceedings of the 2006 ACM SIGPLAN conference on programming language design and implementation (PLDI ’06). ACM Press, New York, pp 26–37
9.
Zurück zum Zitat Felber P, Riegel T, Fetzer C (2008) Dynamic performance tuning of word-based software transactional memory. In: Proceedings of the 13th ACM SIGPLAN symposium on principles and practice of parallel programming, Feb 2008 Felber P, Riegel T, Fetzer C (2008) Dynamic performance tuning of word-based software transactional memory. In: Proceedings of the 13th ACM SIGPLAN symposium on principles and practice of parallel programming, Feb 2008
10.
Zurück zum Zitat Litwin W (1980) Linear hashing : a new tool for file and table addressing. In: Proceedings of the sixth international conference on very large data bases, pp 212–223, 1980 Litwin W (1980) Linear hashing : a new tool for file and table addressing. In: Proceedings of the sixth international conference on very large data bases, pp 212–223, 1980
12.
Zurück zum Zitat Culler DE, Singh JP, Gupta A (1998) Parallel computer architecture: a hardware/software approach. Morgan Kaufmann Publishers, San Francisco Culler DE, Singh JP, Gupta A (1998) Parallel computer architecture: a hardware/software approach. Morgan Kaufmann Publishers, San Francisco
13.
Zurück zum Zitat Binkert Nathan, Dreslinski Ronald, Hsu Lisa, Lim Kevin, Saidi Ali, Reinhardt Steven (2006) The M5 simulator: modeling networked systems. IEEE Micro 26(4):52–60CrossRef Binkert Nathan, Dreslinski Ronald, Hsu Lisa, Lim Kevin, Saidi Ali, Reinhardt Steven (2006) The M5 simulator: modeling networked systems. IEEE Micro 26(4):52–60CrossRef
14.
Zurück zum Zitat Zilles C, Rajwar R (2007) Transactional memory and the birthday paradox. In: Proceedings of the nineteenth ACM symposium on parallel algorithms and architectures, June 2007 Zilles C, Rajwar R (2007) Transactional memory and the birthday paradox. In: Proceedings of the nineteenth ACM symposium on parallel algorithms and architectures, June 2007
15.
Zurück zum Zitat Atoofian E (2011) Set associative lock in software transactional memory. In: The 2nd workshop on applications for multi and many core processors, San Jose, 2011 Atoofian E (2011) Set associative lock in software transactional memory. In: The 2nd workshop on applications for multi and many core processors, San Jose, 2011
16.
Zurück zum Zitat Yoo RM, Ni Y, Welc A, Saha B, Adl-Tabatabai AR, Lee HS (2008) Kicking the tires of software transactional memory: Why the going gets tough. In: Proceeding of 20th ACM symposium on parallelism in algorithms and architectures, pp 265–274, June 2008 Yoo RM, Ni Y, Welc A, Saha B, Adl-Tabatabai AR, Lee HS (2008) Kicking the tires of software transactional memory: Why the going gets tough. In: Proceeding of 20th ACM symposium on parallelism in algorithms and architectures, pp 265–274, June 2008
17.
Zurück zum Zitat Natarajan A, Mittal N (2010) False conflict reduction in the Swiss Transactional Memory (SwissTM) system. In: Proceedings of 2010 IEEE international symposium on parallel and distributed processing, April 2010 Natarajan A, Mittal N (2010) False conflict reduction in the Swiss Transactional Memory (SwissTM) system. In: Proceedings of 2010 IEEE international symposium on parallel and distributed processing, April 2010
18.
Zurück zum Zitat Damron P, Fedorova A, Lev Y, Luchangco V, Moir M, Nussbaum D (2006) Hybrid transactional memory. In: Proceedings of the 12th international conference on architectural support for programming languages and operating systems, pp 336–346, 2006 Damron P, Fedorova A, Lev Y, Luchangco V, Moir M, Nussbaum D (2006) Hybrid transactional memory. In: Proceedings of the 12th international conference on architectural support for programming languages and operating systems, pp 336–346, 2006
Metadaten
Titel
TurboLock: increasing associativity of lock table in transactional memory
verfasst von
Amir Ghanbari Bavarsad
Ehsan Atoofian
Publikationsdatum
01.06.2015
Verlag
Springer Vienna
Erschienen in
Computing / Ausgabe 6/2015
Print ISSN: 0010-485X
Elektronische ISSN: 1436-5057
DOI
https://doi.org/10.1007/s00607-013-0375-4

Weitere Artikel der Ausgabe 6/2015

Computing 6/2015 Zur Ausgabe