This research proposes to make use of the static knowledge obtained by the compiler in the dynamic decision making of the micro-architecture. In that respect, the compiler exposes compile-time analysis to the micro-architecture fully using set membership information, and the micro-architecture uses this information to make critical scheduling and memory optimization decisions. This approach allows the examination of solutions to the memory wall problem that are impossible to do using a hardware-only or fully compiler-managed solution. Using set membership as a framework, this research will pursue the following problems:

1. Cost-effective run-time memory disambiguation of load/store operations to increase the number of parallel memory operations;

2. Scalable cache and load/store queue designs that can sustain multiple memory accesses every cycle for wide-issue superscalar processors;

3. Novel cache designs formed in cooperation with compiler-generated working-set information to reduce the number of conflict and capacity misses; and,

4. Working-set based prefetching techniques to reduce the number of misses and the miss penalty.

The proposed research will significantly improve the performance of scientific applications. These applications are at the heart of basic science research, and their performance is crucial for the advancement of many fields of science. This research will also strengthen the synergy between compilers and micro-architectures, and advance the state-of-the-art in information technology.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Type
Standard Grant (Standard)
Application #
0312892
Program Officer
Timothy M. Pinkston
Project Start
Project End
Budget Start
2003-08-15
Budget End
2007-07-31
Support Year
Fiscal Year
2003
Total Cost
$286,000
Indirect Cost
Name
Michigan Technological University
Department
Type
DUNS #
City
Houghton
State
MI
Country
United States
Zip Code
49931