Data speculation refers to the execution of instructions before it has been determined that the data being used is valid. Data speculation depends on dynamic memory disambiguation to determine if the data was valid, and forces recovery code to execute if the data was invalid. A data speculation compiler generates recovery code to handle the situation where such execution violates a memory dependence. This project examines data speculation techniques, and attempts to understand how to utilize them more effectively. The issues addressed are (1) using data speculation with predication, (2) improving the scheduling algorithms used with it, and (3) using static analysis to help determine when it should be applied. This work will be done using the Memory Conflict Buffer (MCB) technique for dynamic disambiguation. The concepts will be developed so they are applicable to other forms of dynamic memory disambiguation. ***

Project Start
Project End
Budget Start
1996-09-01
Budget End
1998-08-31
Support Year
Fiscal Year
1996
Total Cost
$109,328
Indirect Cost
Name
University of Illinois Urbana-Champaign
Department
Type
DUNS #
City
Champaign
State
IL
Country
United States
Zip Code
61820