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 条
  • [21] Design of two-dimensional horseshoe layout for stretchable electronic systems
    Li, Ming
    Xia, Jing
    Li, Rui
    Kang, Zhan
    Su, Yewang
    [J]. JOURNAL OF MATERIALS SCIENCE, 2013, 48 (24) : 8443 - 8448
  • [23] PROTOTYPE MODELS FOR TWO-DIMENSIONAL LAYOUT DESIGN OF ROBOT SYSTEMS
    SARIN, SC
    WILHELM, WE
    [J]. IIE TRANSACTIONS, 1984, 16 (03) : 206 - 215
  • [24] A survey of two-dimensional graph layout techniques for information visualisation
    Gibson, Helen
    Faith, Joe
    Vickers, Paul
    [J]. INFORMATION VISUALIZATION, 2013, 12 (3-4) : 324 - 357
  • [25] Design of two-dimensional horseshoe layout for stretchable electronic systems
    Ming Li
    Jing Xia
    Rui Li
    Zhan Kang
    Yewang Su
    [J]. Journal of Materials Science, 2013, 48 : 8443 - 8448
  • [26] CLIP: An optimizing layout generator for two-dimensional CMOS cells
    Gupta, A
    Hayes, JP
    [J]. DESIGN AUTOMATION CONFERENCE - PROCEEDINGS 1997, 1997, : 452 - 455
  • [27] Designing a new two-dimensional molecular layout by hydrogen bonding
    Abel, M
    Oison, V
    Koudia, M
    Maurel, C
    Katan, C
    Porte, L
    [J]. CHEMPHYSCHEM, 2006, 7 (01) : 82 - 85
  • [28] Is Morton layout competitive for large two-dimensional arrays yet?
    Thiyagalingam, Jeyarajan
    Beckmann, Olav
    Kelly, Paul H. J.
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2006, 18 (11): : 1509 - 1539
  • [29] Two-dimensional equilibrium constraint layout using simulated annealing
    Liu, Jingfa
    Li, Gang
    Chen, Duanbing
    Liu, Wenjie
    Wang, Yali
    [J]. COMPUTERS & INDUSTRIAL ENGINEERING, 2010, 59 (04) : 530 - 536
  • [30] Two-Dimensional Circle Antenna Layout for Aeronautical MIMO Communications
    Zhang, Chao
    Pang, Keke
    [J]. IEEE ANTENNAS AND WIRELESS PROPAGATION LETTERS, 2013, 12 : 1566 - 1569