Charles E. Leiserson Massachusettes Institute of Technology

Adaptively parallel programs can grow and shrink depending upon the availability of processor resources. Adaptive parallelism creates a host of system issues, especially if we want to insulate the programmer from the vagaries of his computing environment. How should adaptively parallel file I/O be specified by a programmer and implemented by the system? By what mechanisms should adaptively parallel processes communicate, and how should this communication be specified linguistically? How can multiple adaptively parallel processes be scheduled fairly and efficiently? What performance guarantees can adaptively parallel system mechanisms provide? How should adaptively parallel codes be debugged? This research investigates both empirical and theoretical answers to these questions.

The Cape system will provide a prototype implementation of a computing environment for adaptively parallel multithreaded programs. Cape will leverage the multithreaded programming system provided by Cilk, a faithful extension of the C programming language, which has been developed at MIT. Cape will allow Cilk programs to run in an adaptively parallel fashion transparently without any programmer intervention. Cape will incorporate provably good algorithms for scheduling, file I/O, and interprocess communication, providing theoretical guarantees of efficiency.

An adaptively parallel multithreaded computing environment will enable flexible and irregular applications to fully exploit the next generation of computer systems.

Agency
National Science Foundation (NSF)
Institute
Division of Advanced CyberInfrastructure (ACI)
Type
Standard Grant (Standard)
Application #
9975036
Program Officer
Frederica Darema
Project Start
Project End
Budget Start
2000-08-01
Budget End
2002-07-31
Support Year
Fiscal Year
1999
Total Cost
$100,001
Indirect Cost
Name
Massachusetts Institute of Technology
Department
Type
DUNS #
City
Cambridge
State
MA
Country
United States
Zip Code
02139