Font Size: a A A

Dynamic data dependence tracking and its applications

Posted on:2005-10-10Degree:Ph.DType:Dissertation
University:University of RochesterCandidate:Chen, LeiFull Text:PDF
GTID:1458390008490046Subject:Computer Science
Abstract/Summary:
Data dependences among instructions have been extensively exploited by compilers to produce and optimize code. Current hardware schemes implicitly exploit data dependences to improve system performance.; We propose an efficient hardware mechanism, dynamic Data Dependence Tracking (DDT), to dynamically track the data dependences among all the outstanding instructions. We present two DDT filters, the Instruction Dependences Counter (IDC) and the Register Set Extractor (RSE), to extract different dependence information from the DDT. We then use the RSE to extract data dependence information for branches and apply this information to a new value-based branch predictor, called ARVI (Available Register Value Information). We compare the performance of ARVI against the state-of-the-art 2Bc-gskew predictor. Performance improvements of 4.9% and 6.3% are achieved using the ARVI current value and load back schemes, respectively. We also use the dependence information collected by the IDC to dynamically steer instructions to one of the clusters in a heterogeneous clustered architecture. A performance improvement of 4.3% is achieved using the DDT-IDC instruction steering scheme.
Keywords/Search Tags:Data dependence, DDT, Performance
Related items