Recently introduced and forthcoming multithreading processor architectures represent new challenges and opportunities for the compilation system. This proposal will focus on three areas, exploiting features of a simultaneous multithreading (SMT) processor:

1. Generating Task Threads and Helper Threads - Task-based parallelism provides heterogeneous parallelism that is particularly effective for an SMT processor. Helper threads assist and accelerate the execution of other threads, without necessarily offloading any computation.

2. Simultaneous Compilation - Using spare contexts to do dynamic compilation, optimization, and profiling provides the opportunity to perform these functions concurrent with the running program, and continuously, without interrupting other threads.

3. Program Placement for SMT - Efficiently using the memory hierarchy is more difficult on an SMT processor because programs interact in non-deterministic ways. Novel code, data, and page placement compiler algorithms will reduce cache misses for multithreaded workloads.

This research will involve grad and undergrad students, including students from underrepresented groups, training them in research methodology and practice, and developing particular research expertise. This research will create a compiler and simulation infrastructure that will be made available widely to other academic institutions. This should most benefit institutions that lack resources to develop such an infrastructure themselves.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Application #
0311683
Program Officer
Almadena Y. Chtchelkanova
Project Start
Project End
Budget Start
2003-07-01
Budget End
2006-06-30
Support Year
Fiscal Year
2003
Total Cost
$350,000
Indirect Cost
Name
University of California San Diego
Department
Type
DUNS #
City
La Jolla
State
CA
Country
United States
Zip Code
92093