A Hardware-based Cache A Hardware-based Cache Pollution Filtering Pollution Filtering Mechanism for Mechanism for Aggressive Prefetches Aggressive Prefetches Georgia Institute of Technology Georgia Institute of Technology Atlanta, GA 30332 Atlanta, GA 30332 ICPP, Kaohsiung, Taiwan, 2003 Xiaotong Zhuang Xiaotong Zhuang Hsien- Hsin Sean Lee College of Computing College of Computing School of School of Electrical and Electrical and Computer Computer Engineering Engineering
30
Embed
A Hardware-based Cache Pollution Filtering Mechanism for Aggressive Prefetches Georgia Institute of Technology Atlanta, GA 30332 ICPP, Kaohsiung, Taiwan,
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
A Hardware-based Cache A Hardware-based Cache Pollution Filtering Pollution Filtering Mechanism for Mechanism for Aggressive PrefetchesAggressive Prefetches
Georgia Institute of TechnologyGeorgia Institute of TechnologyAtlanta, GA 30332Atlanta, GA 30332
ICPP, Kaohsiung, Taiwan, 2003
Xiaotong ZhuangXiaotong Zhuang Hsien-Hsin Sean
LeeCollege of ComputingCollege of Computing School of Electrical andSchool of Electrical andComputer EngineeringComputer Engineering
Per-Address-based, track cache line addresses issued by each prefetch operation
Can distinguish different prefetch addresses by the same issuing instruction
Need longer history table to reduce aliasing
PC-basedPC-based Track the program counter that triggers a prefetch SW prefetch: PC of the prefetch instruction HW pretetch: the memory instruction that triggers the
prefetch Less aliasing, tolerate smaller history table, less precise
Normalized to the good one without filteringLoss of bad prefetches: 97%(PA) 98%(PC)Loss of good prefetches: 51%(PA) 48%(PC)Traffic reduction: 75%(PA) 74%(PC)
Conclusion Conclusion Too aggressive prefetching is an overkillLots of prefetches are ineffective
Cannot remove SW-induced prefetches without source code Have to live with HW-induced prefetches Need dynamic HW-based prefetch filtering schemes
We propose (1) Per-Address-based and (2) Program-Counter-based that can Filter out ~98% bad prefetches for 8KB L1 Filter out ~92% bad prefetches for 32KB L1 Most good prefetches are retained ~50%(8K L1) ~70%(32K L1)
Improvement Traffic reduced by ~75%(8K L1) ~50%(32K L1) Overall IPC improved by 7% to 9%
History table size can be reasonably smallImprovements decrease when more cache ports are addedIPC loses (9-10 %) with dedicated prefetch buffer for
aggressive prefetching
28ICPP-03
That’s All Folks !That’s All Folks !Thanks Archbeer!Thanks Archbeer!
29ICPP-03
Bad/Good Prefetch Bad/Good Prefetch Ratio Comparison Ratio Comparison ((Default ModelDefault Model))
Reduction: 70%(PA) 91%(PC)
0
0.5
1
1.5
2
2.5
3
3.5 no-filtering PA-based PC-based
Bad/G
ood P
refe
tch R
ati
o
30ICPP-03
Bad/Good Prefetch Bad/Good Prefetch Ratio Comparison Ratio Comparison (32KB)(32KB)