The recent adoption of Transactional Memory (TM) in mainstream microprocessors and programming languages heralds a new era in parallel programming. Simply put, support for low-overhead speculative execution of critical sections will enable greater productivity, more straightforward designs for scalable data structures, and simplified reasoning about the correctness of programs. The full promise of TM, however, will only be realized through the development of a complete software ecosystem to enable scalable and conflict-free execution of transactions at any and all levels of the systems stack; including operating systems, language-level runtime libraries, and end-user code. The design of such an ecosystem is the focus of this research.

This research explores algorithms and software systems that provide a seamless environment for transactional programming. Through a focus on both the C++ and Java languages, this project will invent both data structures and supporting libraries (such as garbage collectors) that can be used both to leverage TM support in programs that are, themselves, unaware of modern transactional features, and to exploit TM support in programs that are explicitly parallel and transactional. The project also considers programming models, with a focus on delivering a purely transactional model of program execution, via parallel open and closed-nested transactions that can exploit the first generation of transactional hardware. The outcomes of this research will influence the design of second generation TM hardware, and will result in prototypes and source code that will be distributed as open-source software. In addition, a broad array of educational and outreach activities are planned, to include deeper integration of parallel programming into undergraduate courses and activities in the local community that aim to widen the pipeline of students considering degrees and careers in science and technology.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Application #
1253362
Program Officer
Anindya Banerjee
Project Start
Project End
Budget Start
2013-08-01
Budget End
2019-07-31
Support Year
Fiscal Year
2012
Total Cost
$458,674
Indirect Cost
Name
Lehigh University
Department
Type
DUNS #
City
Bethlehem
State
PA
Country
United States
Zip Code
18015