Data Layouts for Object-Oriented Programs

被引:0
|
作者
Hirzel, Martin [1 ]
机构
[1] IBM Watson Res Ctr, Hawthorne, NY USA
来源
SIGMETRICS'07: PROCEEDINGS OF THE 2007 INTERNATIONAL CONFERENCE ON MEASUREMENT & MODELING OF COMPUTER SYSTEMS | 2007年 / 35卷 / 01期
关键词
data layout; data placement; spatial locality; cache; TLB; memory subsystem; hardware performance counters; GC;
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Object-oriented programs rely heavily on objects and pointers, making them vulnerable to slowdowns front cache and TLB misses. The cache and TLB behavior depends on the data layout of objects in memory. There are many possible data layouts with different impacts on performance, but it is not known which perform better. This paper presents a novel framework for evaluating data layouts. The framework both snakes implementing many layouts easy, and enables performance measurements of real programs using a product Java virtual machine on stock hardware. This is achieved by sorting objects during copying garbage collection; outside of garbage collection, program performance is solely determined by the data layout that the sort key implements. This paper surveys and evaluates 10 common data layouts with 32 realistic benchmark programs running on 3 different hardware configurations. The results confirm the importance of data layouts for program performance, and show that almost all layouts yield the best performance for some programs and the worst performance for others.
引用
收藏
页码:265 / 276
页数:12
相关论文
共 50 条
  • [1] Data design approach for object-oriented FEM programs
    Kong, X.-A.
    Computers and Structures, 1996, 61 (03): : 503 - 513
  • [2] A data design approach for object-oriented FEM programs
    Kong, XA
    COMPUTERS & STRUCTURES, 1996, 61 (03) : 503 - 513
  • [3] A logic of object-oriented programs
    Abadi, M
    Rustan, K
    Leino, M
    VERIFICATION: THEORY AND PRACTICE: ESSAYS DEDICATED TO ZHOAR MANNA ON THE OCCASION OF HIS 64TH BIRTHDAY, 2003, 2772 : 11 - 41
  • [4] Encapsulation in object-oriented programs
    Chen, JL
    Wang, FJ
    ACM SIGPLAN NOTICES, 1996, 31 (07) : 30 - 32
  • [5] Slicing object-oriented programs
    Chen, JL
    Wang, FJ
    Chen, YL
    ASIA PACIFIC SOFTWARE ENGINEERING CONFERENCE AND INTERNATIONAL COMPUTER SCIENCE CONFERENCE, PROCEEDINGS, 1997, : 395 - 404
  • [6] OBJECT-ORIENTED PROGRAMS IN REALTIME
    GWINN, JM
    SIGPLAN NOTICES, 1992, 27 (02): : 47 - 56
  • [7] Recursion in object-oriented programs
    Blaschek, Gunther
    Frohlich, Joachim Hans
    JOOP - Journal of Object-Oriented Programming, 1998, 11 (07): : 28 - 35
  • [8] A DIAGRAM FOR OBJECT-ORIENTED PROGRAMS
    CUNNINGHAM, W
    BECK, K
    SIGPLAN NOTICES, 1986, 21 (11): : 361 - 367
  • [9] Recursion in object-oriented programs
    Blaschek, G
    Frohlich, JH
    JOURNAL OF OBJECT-ORIENTED PROGRAMMING, 1998, 11 (07): : 28 - 35
  • [10] A Comprehensive Dynamic Data Flow Analysis of Object-Oriented Programs
    Troost, Laura
    Kuchen, Herbert
    ENASE: PROCEEDINGS OF THE 17TH INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2022, : 267 - 274