Skip to main content
Erschienen in: The Journal of Supercomputing 3/2014

01.06.2014

Weighted adaptive concurrency control for software transactional memory

verfasst von: Mohammad Ansari

Erschienen in: The Journal of Supercomputing | Ausgabe 3/2014

Einloggen

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

search-config
loading …

Abstract

Transactional memory programs may have dynamic available parallelism, which is defined as the number of transactions that can be committed concurrently. Prior work presented adaptive concurrency control, which adapts the number of active threads at runtime, and thus the number of concurrently executing transactions, based on available parallelism. Reducing threads when available parallelism is low, and vice versa, improved speedup and reduced wasted work (in aborted transactions). However, prior work did not consider the case where individual threads exhibit dynamic available parallelism. Deactivating threads with low available parallelism, and vice versa, may improve speedup and reduce wasted work further. This paper introduces weighted adaptive concurrency control to exploit the variance in available parallelism between threads. Four algorithms are designed, implemented, and evaluated. They improve speedup and reduce wasted work over prior non-weighted algorithms in applications whose threads exhibit such variance, while maintaining performance parity in applications whose threads do not.

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 Ansari M (2009) Efficient execution of concurrent applications using transactional memory. Ph.D. thesis, School of Computer Science, The University of Manchester Ansari M (2009) Efficient execution of concurrent applications using transactional memory. Ph.D. thesis, School of Computer Science, The University of Manchester
2.
Zurück zum Zitat Ansari M, Kotselidis C, Jarvis K, Luján M, Kirkham C, Watson, I (2008) Advanced concurrency control for transactional memory using transaction commit rate. In: EUROPAR ’08: proceedings of the 14th European conference on parallel processing. LNCS, Springer Ansari M, Kotselidis C, Jarvis K, Luján M, Kirkham C, Watson, I (2008) Advanced concurrency control for transactional memory using transaction commit rate. In: EUROPAR ’08: proceedings of the 14th European conference on parallel processing. LNCS, Springer
3.
Zurück zum Zitat Ansari M, Kotselidis C, Jarvis K, Luján M, Kirkham C, Watson I, Lee TM (2008) A non-trivial benchmark for transactional memory. In: ICA3PP’08: Proceedings of the 7th international conference on algorithms and architectures for parallel processing. LNCS, Springer Ansari M, Kotselidis C, Jarvis K, Luján M, Kirkham C, Watson I, Lee TM (2008) A non-trivial benchmark for transactional memory. In: ICA3PP’08: Proceedings of the 7th international conference on algorithms and architectures for parallel processing. LNCS, Springer
4.
Zurück zum Zitat Ansari M, Kotselidis C, Jarvis K, Luján M, Kirkham C, Watson I (2009) Steal-on-abort: improving transactional memory performance through dynamic transaction reordering. In: HIPEAC ’09: fourth international conference on high performance and embedded architectures and compilers, pp 4–18 Ansari M, Kotselidis C, Jarvis K, Luján M, Kirkham C, Watson I (2009) Steal-on-abort: improving transactional memory performance through dynamic transaction reordering. In: HIPEAC ’09: fourth international conference on high performance and embedded architectures and compilers, pp 4–18
5.
Zurück zum Zitat Atoofian E (2012) Improving performance of software transactional memory through contention locality. J Supercomput 1–21 Atoofian E (2012) Improving performance of software transactional memory through contention locality. J Supercomput 1–21
6.
Zurück zum Zitat Attiya H, Epstein L, Shachnai H, Tamir T (2006) Transactional contention management as a non-clairvoyant scheduling problem. In: PODC ’06: Proceedings of the 25th annual ACM symposium on principles of distributed computing. ACM Press, pp 308–315. doi:10.1145/1146381.1146428 Attiya H, Epstein L, Shachnai H, Tamir T (2006) Transactional contention management as a non-clairvoyant scheduling problem. In: PODC ’06: Proceedings of the 25th annual ACM symposium on principles of distributed computing. ACM Press, pp 308–315. doi:10.​1145/​1146381.​1146428
7.
Zurück zum Zitat Attiya H, Milani A (2012) Transactional scheduling for read-dominated workloads. J Parallel Distrib Comput Attiya H, Milani A (2012) Transactional scheduling for read-dominated workloads. J Parallel Distrib Comput
8.
Zurück zum Zitat Bai T, Shen X, Zhang C, Scherer W, Ding C, Scott M (2007) A key-based adaptive transactional memory executor. In: IPDPS ’07: proceedings of the 21st international parallel and distributed processing symposium, pp 70–84 Bai T, Shen X, Zhang C, Scherer W, Ding C, Scott M (2007) A key-based adaptive transactional memory executor. In: IPDPS ’07: proceedings of the 21st international parallel and distributed processing symposium, pp 70–84
9.
Zurück zum Zitat Blumofe RD, Joerg CF, Kuszmaul BC, Leiserson CE, Randall KH, Zhou Y (1996) Cilk: an efficient multithreaded runtime system. J Parallel Distrib Comput 37(1):55–69CrossRef Blumofe RD, Joerg CF, Kuszmaul BC, Leiserson CE, Randall KH, Zhou Y (1996) Cilk: an efficient multithreaded runtime system. J Parallel Distrib Comput 37(1):55–69CrossRef
10.
Zurück zum Zitat Chung J, Yen L, Diestelhorst S, Pohlack M, Hohmuth M, Christie D, Grossman D (2010) Asf: Amd64 extension for lock-free data structures and transactional memory. In: Microarchitecture (MICRO), 2010 43rd annual IEEE/ACM international symposium on. IEEE, pp 39–50 Chung J, Yen L, Diestelhorst S, Pohlack M, Hohmuth M, Christie D, Grossman D (2010) Asf: Amd64 extension for lock-free data structures and transactional memory. In: Microarchitecture (MICRO), 2010 43rd annual IEEE/ACM international symposium on. IEEE, pp 39–50
11.
Zurück zum Zitat Didona D (2012) Scientific report for STSM project. In: Euro-TM workshop on transactional memory (WTM 2012) Didona D (2012) Scientific report for STSM project. In: Euro-TM workshop on transactional memory (WTM 2012)
12.
Zurück zum Zitat Dolev S, Hendler D, Suissa A (2008) CAR-STM: Scheduling-based collision avoidance and resolution for software transactional memory. In: PODC ’07: proceedings of the 26th annual ACM symposium on principles of distributed computing, pp 125–134 Dolev S, Hendler D, Suissa A (2008) CAR-STM: Scheduling-based collision avoidance and resolution for software transactional memory. In: PODC ’07: proceedings of the 26th annual ACM symposium on principles of distributed computing, pp 125–134
13.
Zurück zum Zitat Dragojević A, Guerraoui R, Singh AV, Singh V (2009) Preventing versus curing: avoiding conflicts in transactional memories. In: Proceedings of the 28th ACM symposium on principles of distributed computing. ACM, pp 7–16 Dragojević A, Guerraoui R, Singh AV, Singh V (2009) Preventing versus curing: avoiding conflicts in transactional memories. In: Proceedings of the 28th ACM symposium on principles of distributed computing. ACM, pp 7–16
14.
Zurück zum Zitat Felber P, Fetzer C, Marlier P, Riegel T (2010) Time-based software transactional memory. IEEE Trans Parallel Distrib Syst 21(12):1793–1807CrossRef Felber P, Fetzer C, Marlier P, Riegel T (2010) Time-based software transactional memory. IEEE Trans Parallel Distrib Syst 21(12):1793–1807CrossRef
15.
Zurück zum Zitat Felber P, Fetzer C, Riegel T (2008) Dynamic performance tuning of word-based software transactional memory. In: PPoPP ’08: proceedings of the 13th ACM SIGPLAN symposium on principles and practice of parallel programming. ACM Press, pp 237–246. doi:10.1145/1345206.1345241 Felber P, Fetzer C, Riegel T (2008) Dynamic performance tuning of word-based software transactional memory. In: PPoPP ’08: proceedings of the 13th ACM SIGPLAN symposium on principles and practice of parallel programming. ACM Press, pp 237–246. doi:10.​1145/​1345206.​1345241
16.
Zurück zum Zitat Fraser K, Harris T (2007) Concurrent programming without locks. ACM Trans Comput Syst 25(2):5CrossRef Fraser K, Harris T (2007) Concurrent programming without locks. ACM Trans Comput Syst 25(2):5CrossRef
17.
Zurück zum Zitat Guerraoui R, Herlihy M, Kapałka M, Pochon B (2005) Robust contention management in software transactional memory. In: SCOOL ’05: workshop on synchronization and concurrency in object-oriented languages Guerraoui R, Herlihy M, Kapałka M, Pochon B (2005) Robust contention management in software transactional memory. In: SCOOL ’05: workshop on synchronization and concurrency in object-oriented languages
18.
Zurück zum Zitat Guerraoui R, Herlihy M, Pochon B (2005) Polymorphic contention management. In: DISC ’05: 19th international symposium on distributed computing. LNCS, Springer, pp 303–323 Guerraoui R, Herlihy M, Pochon B (2005) Polymorphic contention management. In: DISC ’05: 19th international symposium on distributed computing. LNCS, Springer, pp 303–323
19.
Zurück zum Zitat Guerraoui R, Herlihy M, Pochon B (2005) Toward a theory of transactional contention managers. In: PODC ’05: proceedings of the 24th annual symposium on principles of distributed computing. ACM Press, pp 258–264. doi:10.1145/1073814.1073863 Guerraoui R, Herlihy M, Pochon B (2005) Toward a theory of transactional contention managers. In: PODC ’05: proceedings of the 24th annual symposium on principles of distributed computing. ACM Press, pp 258–264. doi:10.​1145/​1073814.​1073863
20.
Zurück zum Zitat Haring R, Team B (2011) The blue gene/q compute chip. In: Hot Chips Haring R, Team B (2011) The blue gene/q compute chip. In: Hot Chips
21.
Zurück zum Zitat Harris T, Larus JR, Rajwar R (2010) Transactional Memory, 2nd edn. Morgan and Claypool Harris T, Larus JR, Rajwar R (2010) Transactional Memory, 2nd edn. Morgan and Claypool
22.
Zurück zum Zitat Heber T, Hendler D, Suissa A (2012) On the impact of serializing contention management on stm performance. J Parallel Distrib Comput Heber T, Hendler D, Suissa A (2012) On the impact of serializing contention management on stm performance. J Parallel Distrib Comput
23.
Zurück zum Zitat Herlihy M, Luchangco V, Moir M (2006) A flexible framework for implementing software transactional memory. In: OOPSLA ’06: proceedings of the 21st annual conference on object-oriented programming systems, languages, and applications. ACM Press, pp 253–262. doi:10.1145/1167473.1167495 Herlihy M, Luchangco V, Moir M (2006) A flexible framework for implementing software transactional memory. In: OOPSLA ’06: proceedings of the 21st annual conference on object-oriented programming systems, languages, and applications. ACM Press, pp 253–262. doi:10.​1145/​1167473.​1167495
24.
Zurück zum Zitat Herlihy M, Luchangco V, Moir M, Scherer WN III (2003) Software transactional memory for dynamic-sized data structures. In: PODC ’03: proceedings of the 22nd annual symposium on principles of distributed computing. ACM Press, pp 92–101. doi:10.1145/872035.872048 Herlihy M, Luchangco V, Moir M, Scherer WN III (2003) Software transactional memory for dynamic-sized data structures. In: PODC ’03: proceedings of the 22nd annual symposium on principles of distributed computing. ACM Press, pp 92–101. doi:10.​1145/​872035.​872048
25.
Zurück zum Zitat Herlihy M, Moss JEB (1993) Transactional memory: architectural support for lock-free data structures. In: ISCA ’93: proceedings of the 20th annual international symposium on computer architecture. ACM Press, pp 289–300. doi:10.1145/165123.165164 Herlihy M, Moss JEB (1993) Transactional memory: architectural support for lock-free data structures. In: ISCA ’93: proceedings of the 20th annual international symposium on computer architecture. ACM Press, pp 289–300. doi:10.​1145/​165123.​165164
26.
Zurück zum Zitat Marathe V, Scherer W III, Scott M (2005) Adaptive software transactional memory. In: DISC ’05: proceedings of the 19th international symposium on distributed computing. LNCS, Springer Marathe V, Scherer W III, Scott M (2005) Adaptive software transactional memory. In: DISC ’05: proceedings of the 19th international symposium on distributed computing. LNCS, Springer
27.
Zurück zum Zitat Minh CC, Chung J, Kozyrakis C, Olukotun K (2008) Stamp: Stanford transactional applications for multi-processing. In: IEEE International Symposium on, workload characterization, 2008. IISWC 2008. IEEE, pp 35–46 Minh CC, Chung J, Kozyrakis C, Olukotun K (2008) Stamp: Stanford transactional applications for multi-processing. In: IEEE International Symposium on, workload characterization, 2008. IISWC 2008. IEEE, pp 35–46
29.
Zurück zum Zitat Scherer W III, Scott M (2004) Contention management in dynamic software transactional memory. In: CSJP ’04: workshop on concurrency and synchronization in java programs Scherer W III, Scott M (2004) Contention management in dynamic software transactional memory. In: CSJP ’04: workshop on concurrency and synchronization in java programs
30.
Zurück zum Zitat Scherer W III, Scott M (2005) Advanced contention management for dynamic software transactional memory. In: PODC ’05: proceedings of the 24th annual symposium on principles of distributed computing. ACM Press, pp 240–248. doi:10.1145/1073814.1073861 Scherer W III, Scott M (2005) Advanced contention management for dynamic software transactional memory. In: PODC ’05: proceedings of the 24th annual symposium on principles of distributed computing. ACM Press, pp 240–248. doi:10.​1145/​1073814.​1073861
31.
Zurück zum Zitat Shavit N, Touitou D (1995) Software transactional memory. In: PODC ’95: proceedings of the 14th annual ACM symposium on principles of distributed computing. ACM Press, pp 204–213. doi:10.1145/224964.224987 Shavit N, Touitou D (1995) Software transactional memory. In: PODC ’95: proceedings of the 14th annual ACM symposium on principles of distributed computing. ACM Press, pp 204–213. doi:10.​1145/​224964.​224987
32.
Zurück zum Zitat Watson I, Kirkham C, Luján M (2007) A study of a transactional parallel routing algorithm. In: PACT ’07: proceedings of the 16th international conference on parallel architectures and compilation techniques. IEEE Computer Society Press, pp 388–400 Watson I, Kirkham C, Luján M (2007) A study of a transactional parallel routing algorithm. In: PACT ’07: proceedings of the 16th international conference on parallel architectures and compilation techniques. IEEE Computer Society Press, pp 388–400
33.
Zurück zum Zitat Yoo RM, Lee HHS (2008) Adaptive transaction scheduling for transactional memory systems. In: SPAA ’08: proceedings of the 20th annual symposium on parallelism in algorithms and architectures, pp 169–178 Yoo RM, Lee HHS (2008) Adaptive transaction scheduling for transactional memory systems. In: SPAA ’08: proceedings of the 20th annual symposium on parallelism in algorithms and architectures, pp 169–178
Metadaten
Titel
Weighted adaptive concurrency control for software transactional memory
verfasst von
Mohammad Ansari
Publikationsdatum
01.06.2014
Verlag
Springer US
Erschienen in
The Journal of Supercomputing / Ausgabe 3/2014
Print ISSN: 0920-8542
Elektronische ISSN: 1573-0484
DOI
https://doi.org/10.1007/s11227-014-1138-5

Weitere Artikel der Ausgabe 3/2014

The Journal of Supercomputing 3/2014 Zur Ausgabe