This project, procuring a small cluster of shared-memory parallel machines built with multicore processor engines, aims at exploring approaches to increase concurrency and reduce overheads by relaxing constraints while preserving program semantics. The work -Explores novel approaches to concurrent and parallel programming, -Motivates new classes of loosely synchronous parallel algorithms, and -Spurs future developments in programming paradigms with real applications.

The project brings together researchers in compiler design and programming languages, runtime environments, and parallel algorithms and applications. The infrastructure creates new synergies by exploring state-of-the-art programming principles and concepts in the context of real applications and motivating novel algorithmic classes capable of tolerating large discrepancies in data access latencies. The problems of writing concurrent programs effectively and safely in languages like Java or C#, which provide integral support for multithreading, even on existing single processor platforms, become exacerbated when the execution platform supports true parallelism (e.g., on parallel system based on recently developed multi-core processor designs). This work looks at techniques that permit overspecified safety invariants in concurrent programs to be relaxed automatically and dynamically whenever the invariants are not compromised. This investigation leverages work on transaction-based concurrency control and safe speculative execution that permit logically concurrent access to shared regions of code, but which ensure that such accesses do not violate intended serialization invariants. The project studies different transactional and speculative models in a programming language context, explores tradeoffs among these models with respect to safety and performance, and investigates the scalability characteristics of the abstractions developed on the proposed multicluster platform.

Broader Impact: The work leads to a better understanding of concurrent program construction, and consequently, improved implementations. The project supports a variety of educational related activities, including classroom instruction and workshops. Addressing foundational technologies for many emerging application needs, the project also interacts with industry and contributes to train graduate students. Minority students will be attracted using seminars.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Type
Standard Grant (Standard)
Application #
0551658
Program Officer
Rita V. Rodriguez
Project Start
Project End
Budget Start
2006-03-01
Budget End
2008-02-29
Support Year
Fiscal Year
2005
Total Cost
$99,979
Indirect Cost
Name
Purdue University
Department
Type
DUNS #
City
West Lafayette
State
IN
Country
United States
Zip Code
47907