Towards the Analysis of Transactional Software

Loading...
Thumbnail Image

Date

Authors

Kidd, Nicholas
Moore Kevin
Reps, Thomas
Wood, David

Advisors

License

DOI

Type

Technical Report

Journal Title

Journal ISSN

Volume Title

Publisher

University of Wisconsin-Madison Department of Computer Sciences

Grantor

Abstract

The computer-architecture community's recent focus on multi-core architectures has spurred renewed interest in concurrent-programming techniques and abstractions. For programmers to take advantage of the processing power of today's multi-core chips, they need to write multi-threaded applications. Specifically, the programming-language community has focused on software transactions. A software transaction declaratively specifies what program statements should execute atomically. Our research focuses on the analysis of programs that make use of software transactions. We present a novel interprocedural analysis, XRef analysis, that annotates the fields of each record type in the program with the static transactions in which it is referenced. We show how the results of XRef analysis can be used to perform additional analyses. In particular, we present two such analyses, XOrder and XProtect. XOrder is aimed at software running on a transactional-memory platform and attempts to find an optimized layout for a record in memory. XProtect is a safety analysis that warns the programmer if a shared record is inconsistently protected by a software transaction.

Description

Keywords

Related Material and Data

Citation

TR1624

Sponsorship

Endorsement

Review

Supplemented By

Referenced By