Two-dimensional bidirectional object layout

被引:0
|
作者
Gil, Joseph [1 ]
Pugh, William [2 ]
Weddell, Grant E. [3 ]
Zibin, Yoav [1 ]
机构
[1] Technion Israel Inst Technol, IL-32000 Haifa, Israel
[2] Univ Maryland, Dept Comp Sci, College Pk, MD 20742 USA
[3] Univ Waterloo, Waterloo, ON N2L 3G1, Canada
基金
以色列科学基金会;
关键词
algorithms; design; measurement; performance; theory; bidirectional; coloring; hierarchy; inheritance; layout;
D O I
10.1145/1387673.1387677
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Object layout schemes used in C++ and other languages rely on (sometimes numerous) compiler generated fields. We describe a language-independent object layout scheme, which is space optimal, that is, objects are contiguous, and contain no compiler generated fields other than a single type identifier. As in C++ and other multiple inheritance languages such as CECIL and DYLAN, the new scheme sometimes requires extra levels of indirection to access some of the fields. Using a data set of 28 hierarchies, totaling almost 50,000 types, we show that this scheme improves field access efficiency over standard implementations, and competes favorably with (the non-space-optimal) highly optimized C++ specific implementations. The benchmark includes an analytical model for computing the frequency of indirections in a sequence of field access operations. Our layout scheme relies on whole-program analysis, which requires about 10 microseconds per type on a contemporary architecture (Pentium III, 900Mhz, 256MB machine), even in very large hierarchies. We also present a layout scheme for separate compilation using the user-annotation of virtual inheritance edge that is used in C++.
引用
收藏
页数:38
相关论文
共 50 条
  • [1] Two-dimensional Bi-directional object layout
    Zibin, Y
    Gil, J
    [J]. ECOOP 2003 - OBJECT-ORIENTED PROGRAMMING, PROCEEDINGS, 2003, 2743 : 329 - 350
  • [2] BIDIRECTIONAL OBJECT LAYOUT FOR SEPARATE COMPILATION
    MYERS, AC
    [J]. SIGPLAN NOTICES, 1995, 30 (10): : 124 - 139
  • [3] Optimal two-dimensional layout of industrial facilities
    Barbosa-Póvoa, AP
    Mateus, R
    Novais, AQ
    [J]. INTERNATIONAL JOURNAL OF PRODUCTION RESEARCH, 2001, 39 (12) : 2567 - 2593
  • [4] A two-dimensional layout computer aided system
    Dai, T
    Cao, J
    Zhang, X
    [J]. FOURTH INTERNATIONAL CONFERENCE ON COMPUTER-AIDED DESIGN AND COMPUTER GRAPHICS, 1996, 2644 : 693 - 698
  • [5] ALGORITHMS FOR OPTIMIZING, TWO-DIMENSIONAL SYMBOLIC LAYOUT COMPACTION
    WOLF, WH
    MATHEWS, RG
    NEWKIRK, JA
    DUTTON, RW
    [J]. IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 1988, 7 (04) : 451 - 466
  • [6] Is morton layout competitive for large two-dimensional arrays?
    Thiyagalingam, J
    Kelly, PHJ
    [J]. EURO-PAR 2002 PARALLEL PROCESSING, PROCEEDINGS, 2002, 2400 : 280 - 288
  • [7] Two-dimensional packing algorithms for layout of disconnected graphs
    Dogrusoz, U
    [J]. INFORMATION SCIENCES, 2002, 143 (1-4) : 147 - 158
  • [8] A model and algorithm of two-dimensional optimum layout in blanking
    Yong, C
    Min, T
    Tong, RF
    Dong, JX
    [J]. PROCEEDINGS OF THE SEVENTH INTERNATIONAL CONFERENCE ON CSCW IN DESIGN, 2002, : 210 - 215
  • [9] Two-dimensional layout migration by soft constraint satisfaction
    Tang, QY
    Zhu, JW
    [J]. 6th International Symposium on Quality Electronic Design, Proceedings, 2005, : 35 - 39
  • [10] Object tracking based on two-dimensional PCA
    Xu, Fuyuan
    Gu, Guohua
    Kong, Xiaofang
    Wang, Pengcheng
    Ren, Kan
    [J]. OPTICAL REVIEW, 2016, 23 (02) : 231 - 243