Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Reports, Documentation, and Standards
  4. Transaction Polymorphism
 
report

Transaction Polymorphism

Gramoli, Vincent  
•
Guerraoui, Rachid  
2011

Concurrent implementations of abstract types usually rely on lock-free primitives or locks and are highly tuned to support a finite set of efficient operations. However, it is very hard to extend such types for specific needs by adding new operations. The synchronization based on memory transactions, which is generally less efficient than based on lock-free primitives or locks, has been proposed in part to address this issue by ensuring that any set of transactional operations can run concurrently. This paper introduces transaction polymorphism, a synchronization technique that consists of providing more control to the programmer than traditional (monomorphic) transactions to achieve comparable performance to generic lock-based and lock-free solutions. We show in this paper that, maybe unsurprisingly, monomorphic transactions cannot reach the level of concurrency obtained with locks. As a drawback of sharing the same semantics that needs to be strong enough for various operations, monomorphic transactions seriously underutilize the concurrency potential of such operations. We describe a Java polymorphic transactional memory that includes three distinct transaction types, which we compare against four existing (monomorphic) STMs, as well as against existing lock-based and lock-free synchronization on a collection micro-benchmark and on the STMBench7 macrobenchmark. Our results show that polymorphism can be at least 2.4 times faster than any of these alternatives on 64 threads.

  • Files
  • Details
  • Metrics
Type
report
Author(s)
Gramoli, Vincent  
Guerraoui, Rachid  
Date Issued

2011

Total of pages

16

Subjects

Polymorphism

URL

URL

http://lpd.epfl.ch/gramoli/php/pub_irisa_type.php?ref=GG11#GG11
Written at

EPFL

EPFL units
DCL  
Available on Infoscience
February 13, 2011
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/64273
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés