Data flow analysis for software prefetching linked data structures in Java']Java

被引:40
作者
Cahoon, B [1 ]
McKinley, KS [1 ]
机构
[1] Univ Massachusetts, Dept Comp Sci, Amherst, MA 01002 USA
来源
2001 INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES, PROCEEDINGS | 2001年
关键词
D O I
10.1109/PACT.2001.953309
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In this paper we describe an effective compile-time analysis for software prefetching in Java. Previous work in software data prefetching for pointer-based codes uses simple compiler algorithms and does not investigate prefetching for object-oriented language features that make compile-time analysis difficult. We develop a new dataflow analysis to detect regular accesses to linked data structures in Java programs. We use intra and interprocedural analysis to identify profitable prefetching opportunities for greedy and jump-pointer prefetching, and we implement these techniques in a compiler for Java. Our results show that both prefetching techniques improve four of our ten programs. The largest performance improvement is 48% with jump-pointers, but consistent improvements are difficult to obtain.
引用
收藏
页码:280 / 291
页数:12
相关论文
共 30 条
  • [1] Aho Alfred V., 1986, ADDISON WESLEY SERIE
  • [2] ALDRICH J, 1999, P 6 INT STAT AN S SA, P19
  • [3] BENEDITK M, 1999, P ESOP 99 EUR S PROG
  • [4] Bernstein D., 1995, Parallel Architectures and Compilation Techniques. Proceedings of the IFIP WG10.3 Working Conference. PACT'95, P19
  • [5] Cahoon B., 1999, WORKSH HARDW SUPP OB
  • [6] CALLAHAN D, 1991, 4TH P INT C ARCH SUP, P40
  • [7] Cache-conscious structure layout
    Chilimbi, TM
    Hill, MD
    Larus, JR
    [J]. ACM SIGPLAN NOTICES, 1999, 34 (05) : 1 - 12
  • [8] Vortex: An optimizing compiler for object-oriented languages
    Dean, J
    DeFouw, G
    Grove, D
    Litvinov, V
    Chambers, C
    [J]. ACM SIGPLAN NOTICES, 1996, 31 (10) : 83 - 100
  • [9] DOLBY J, 2000, P 2000 ACM SIGPLAN C
  • [10] GERLEK MP, 1995, ACM T PROGRAMMING LA, V17