[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/178243.178248acmconferencesArticle/Chapter ViewAbstractPublication PagespldiConference Proceedingsconference-collections
Article
Free access

Link-time optimization of address calculation on a 64-bit architecture

Published: 01 June 1994 Publication History

Abstract

Compilers for new machines with 64-bit addresses must generate code that works when the memory used by the program is large. Procedures and global variables are accessed indirectly via global address tables, and calling conventions include code to establish the addressability of the appropriate tables. In the common case of a program that does not require a lot of memory, all of this can be simplified considerably, with a corresponding reduction in program size and execution time.
We have used our link-time code modification system OM to perform program transformations related to global address use on the Alpha AXP. Though simple, many of these arewhole-program optimizations that can be done only when we can see the entire program at once, so link-time is an ideal occasion to perform them.
This paper describes the optimizations performed and shows their effects on program size and performance. Relatively modest transformations, possible without moving code, improve the performance of SPEC benchmarks by an average of 1.5%. More ambitious transformations, requiring an understanding of program structure that is thorough but not difficult at link-time, can do even better, reducing program size by 10% or more, and improving performance by an average of 3.8%.
Even a program compiled monolithically with interprocedural optimization can benefit nearly as much from this technique, if it contains statically-linked pre-compiled library code. When the benchmark sources were compiled in this way, we were still able to improve their performance by 1.35% with the modest transformations and 3.4% with the ambitious transformations.

References

[1]
Digital Equipment Corporation. DEC OSF/1 Programmer's Guide, section 3.2.3: "Name Resolution." Digital Equipment Corporation, 1993.
[2]
Robert B. Garner, et al. The Scalable Processor Architecture (SPARC). Digest of Papers: Compcon 88, pp. 278-283, March 1988.
[3]
Gerry Kane. MtPS R2000 Risc Architecture. Prentice Hall, 1987.
[4]
Richard L. Sites, ed. Alpha Architecture Reference Manual. Digital Press, 1992.
[5]
Amitabh Srivastava and Alan Eustace. ATOM - A System for Building Customized Program Analysis Tools. Proceedings of the SIGPLAN '94 Conference on Programming Language Design and Implementation, to appear. Also available as WRL Research Report 94/2, March 1994.
[6]
Amitabh Srivastava and David W. Wall. A practical system for intermodule code optimization at link-time. Journal of Programming Languages 1 (I), pp. 1-18, March 1993. Also available as WRL Research Report 92/6, December 1992.

Cited By

View all
  • (2014)Optimizing Memory Access with Fast Address Computation on a MIPS ArchitectureProceedings of the 2014 9th IEEE International Conference on Networking, Architecture, and Storage10.1109/NAS.2014.31(143-147)Online publication date: 6-Aug-2014
  • (2008)Software InstrumentationWiley Encyclopedia of Computer Science and Engineering10.1002/9780470050118.ecse386(1-11)Online publication date: 15-Sep-2008
  • (2007)Automated reduction of the memory footprint of the Linux kernelACM Transactions on Embedded Computing Systems10.1145/1274858.12748616:4(23-es)Online publication date: 1-Sep-2007
  • Show More Cited By

Index Terms

  1. Link-time optimization of address calculation on a 64-bit architecture

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    PLDI '94: Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
    August 1994
    360 pages
    ISBN:089791662X
    DOI:10.1145/178243
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 June 1994

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Article

    Conference

    PLDI94
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 406 of 2,067 submissions, 20%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)154
    • Downloads (Last 6 weeks)18
    Reflects downloads up to 12 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2014)Optimizing Memory Access with Fast Address Computation on a MIPS ArchitectureProceedings of the 2014 9th IEEE International Conference on Networking, Architecture, and Storage10.1109/NAS.2014.31(143-147)Online publication date: 6-Aug-2014
    • (2008)Software InstrumentationWiley Encyclopedia of Computer Science and Engineering10.1002/9780470050118.ecse386(1-11)Online publication date: 15-Sep-2008
    • (2007)Automated reduction of the memory footprint of the Linux kernelACM Transactions on Embedded Computing Systems10.1145/1274858.12748616:4(23-es)Online publication date: 1-Sep-2007
    • (2007)Techniques for Classifying Executions of Deployed Software to Support Software Engineering TasksIEEE Transactions on Software Engineering10.1109/TSE.2007.100433:5(287-304)Online publication date: 1-May-2007
    • (2007)Embedded SoftwareEssential Issues in SOC Design10.1007/1-4020-5352-5_5(119-175)Online publication date: 2007
    • (2005)LANCETProceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering10.1145/1108792.1108812(75-81)Online publication date: 5-Sep-2005
    • (2005)LANCETACM SIGSOFT Software Engineering Notes10.1145/1108768.110881231:1(75-81)Online publication date: 5-Sep-2005
    • (2004)Link-time optimization of ARM binariesACM SIGPLAN Notices10.1145/998300.99719439:7(211-220)Online publication date: 11-Jun-2004
    • (2004)Link-time optimization of ARM binariesProceedings of the 2004 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems10.1145/997163.997194(211-220)Online publication date: 11-Jun-2004
    • (2004)The design and implementation of FITProceedings of the 5th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering10.1145/996821.996833(29-34)Online publication date: 7-Jun-2004
    • Show More Cited By

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media