Compiler-Assisted Selection of a Software Transactional Memory System
- Cite this paper as:
- Schindewolf M., Esselson A., Karl W. (2011) Compiler-Assisted Selection of a Software Transactional Memory System. In: Berekovic M., Fornaciari W., Brinkschulte U., Silvano C. (eds) Architecture of Computing Systems - ARCS 2011. ARCS 2011. Lecture Notes in Computer Science, vol 6566. Springer, Berlin, Heidelberg
With the advent of Transactional Memory, a multitude of Software Transactional Memory (STM) systems evolved. Often, the programmer sets key parameters of an STM system at compile time. The performance of the application depends on choosing the right parameters. Unfortunately, programmers do not always know the application characteristic to decide on a profound basis. As a consequence, the application may run longer than necessary. Thus, we propose MAPT, which uses static information to guide the programmer to select an STM property. In particular, MAPT assists the programmer to select the resolution of the conflict detection scheme. This paper presents MAPT, its integration in the Low Level Virtual Machine compiler framework, and results from the evaluation with test cases and two STAMP benchmarks.
KeywordsSoftware Transactional Memory Granularity Compiler Assistance LLVM Heuristic
Unable to display preview. Download preview PDF.