Transactional Memory. Foundations, Algorithms, Tools, and Applications: Framework Support for the Efficient Implementation of Multi-version Algorithms

Ricardo J. Dias, Tiago M. Vale, João M. Lourenço

Research output: Chapter in Book/Report/Conference proceedingChapter

Abstract

Software Transactional Memory algorithms associate metadata with the memory locations accessed during a transactions lifetime. This metadata may be stored in an external table and accessed by way of a function that maps the address of each memory location with the table entry that keeps its metadata (this is the out-place or external scheme); or alternatively may be stored adjacent to the associated memory cell by wrapping them together (the in-place scheme). In transactional memory multi-version algorithms, several versions of the same memory location may exist. The efficient implementation of these algorithms requires a one-to-one correspondence between each memory location and its list of past versions, which is stored as metadata. In this chapter we address the matter of the efficient implementation of multi-version algorithms in Java by proposing and evaluating a novel in-place metadata scheme for the Deuce framework. This new scheme is based in Java Bytecode transformation techniques and its use requires no changes to the application code. Experimentation indicates that multi-versioning STM algorithms implemented using our new in-place scheme are in average 6 $ faster than when implemented with the out-place scheme.
Original languageEnglish
Title of host publicationTransactional Memory. Foundations, Algorithms, Tools, and Applications
Subtitle of host publicationFramework Support for the Efficient Implementation of Multi-version Algorithms
EditorsRachid Guerraoui, Paolo Romano
PublisherSPRINGER INTERNATIONAL PUBLISHING AG
Pages166-191
Number of pages26
Volume8913
ISBN (Electronic)978-3-319-14719-2
DOIs
Publication statusPublished - 2015

Publication series

NameLecture Notes in Computer Science
PublisherSpringer International Publishing

Keywords

  • Automatic configuration, Virtualization, Virtual appliance

Fingerprint Dive into the research topics of 'Transactional Memory. Foundations, Algorithms, Tools, and Applications: Framework Support for the Efficient Implementation of Multi-version Algorithms'. Together they form a unique fingerprint.

Cite this