The performance of runtime data cache prefetching in a dynamic optimization system

Jiwei Lu, Howard Chen, Rao Fu, Wei‐Chung Hsu, Bobbie Othmer, Pen-Chung Yew, Dong-Yuan Chen · 2003

Traditional software controlled data cache prefetching is often ineffective due to the lack of runtime cache miss and miss address information. To overcome this limitation, we implement runtime data cache prefetching in the dynamic optimization system ADORE (ADaptive Object code RE-optimization). Its performance has been compared with static software prefetching on the SPEC2000 benchmark suite. Runtime cache prefetching shows better performance. On an Itanium 2 based Linux workstation, it can increase performance by more than 20 % over static prefetching on some benchmarks. For benchmarks that do not benefit from prefetching, the runtime optimization system adds only 1%-2 % overhead. We have also collected cache miss profiles to guide static data cache prefetching in the ORC R©compiler. With that information the compiler can effectively avoid generating prefetches for loops that hit well in the data cache. 1.

Read the paper · More papers on PaperTik