Software thread-level speculation: an optimistic library implementation

Cosmin Eugen Oancea, Alan Mycroft

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningpeer review

Abstract

Software thread level speculation (TLS) solutions tend to mirror the hardware ones, in the sense that they employ one, exact dependency-tracking mechanism. Our perspective is that software-flexibility is, perhaps, better exploited by a family of lighter, if less precise speculative models that can be combined together in an effective configuration, which takes advantage of the application's code-patterns.

This paper reports on two main contributions. First, it introduces SpLSC: a software TLS model that trades the potential for false-positive violations for a small memory overhead and efficient implementation. Second, it presents PolyLibTLS: a library that encapsulates several lightweight models and enables their composition. In this context, we report on the template meta-programming techniques that we used to achieve performance and safety, while preserving library's modularity, extensibility and usability properties.

Furthermore, we demonstrate that the user-framework interaction is straightforward and present parallelization timing results that validate our high-level perspective.
OriginalsprogEngelsk
TitelProceedings of the 1st international workshop on Multicore software engineering (IWMSE'08)
Antal sider10
Publikationsdato2008
Sider23-32
ISBN (Elektronisk)978-1-60558-031-9
DOI
StatusUdgivet - 2008
Udgivet eksterntJa

Bibliografisk note

@inproceedings{Oancea:2008:STS:1370082.1370090,
author = {Oancea, Cosmin E. and Mycroft, Alan},
title = {Software Thread-level Speculation: An Optimistic Library Implementation},
booktitle = {Proceedings of the 1st International Workshop on Multicore Software Engineering},
series = {IWMSE '08},
year = {2008},
isbn = {978-1-60558-031-9},
location = {Leipzig, Germany},
pages = {23--32},
numpages = {10},
url = {http://doi.acm.org/10.1145/1370082.1370090},
doi = {10.1145/1370082.1370090},
acmid = {1370090},
publisher = {ACM},
address = {New York, NY, USA},
keywords = {template metaprogramming, thread-level speculation (TLS)},
}

Citationsformater