Abstract
Data prefetching is a widely used technique to alleviate "memory wall" problem by fetching the data that may be touched in the near future in advance. Generally, data prefetching is classified into hardware prefetching and software prefetching. Compared to hardware prefetching, software prefetching is more flexible, and typically achieves higher prefetch accuracy. Currently, Sunway multiple-core processor only supports hardware prefetching. To study how software prefetching perform on Sunway processor, in this paper, we first migrate the software data prefetching in the GCC complier to Sunway processor. Then we tune the loop-level prefetching cost model according to Sunway processor’s hardware features. Finally, we conduct experiments to evaluate the effectiveness of the tuned software prefetching. Results show that, compared to the baseline where no prefetching is applied, software prefetching delivers an average speedup of 1.08x (up to 2.46x) and 1.16x (up to 1.88x) for SPECint 2006 and SPECfp 2006 benchmark suite, respectively. Moreover, software prefetching outperforms hardware prefetching for both benchmark suites. This demonstrates the efficacy of software data prefetching.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.