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

Code compression

Published: 01 May 1997 Publication History

Abstract

Current research in compiler optimization counts mainly CPU time and perhaps the first cache level or two. This view has been important but is becoming myopic, at least from a system-wide viewpoint, as the ratio of network and disk speeds to CPU speeds grows exponentially.For example, we have seen the CPU idle for most of the time during paging, so compressing pages can increase total performance even though the CPU must decompress or interpret the page contents. Another profile shows that many functions are called just once, so reduced paging could pay for their interpretation overhead.This paper describes:• Measurements that show how code compression can save space and total time in some important real-world scenarios.• A compressed executable representation that is roughly the same size as gzipped x86 programs and can be interpreted without decompression. It can also be compiled to high-quality machine code at 2.5 megabytes per second on a 120MHz Pentium processor• A compressed "wire" representation that must be decompressed before execution but is, for example, roughly 21% the size of SPARC code when compressing gcc.

References

[1]
Timothy C. Bell, John G. Cleary, and lan H. Witten. Text Compression. Prentice Hall, 1990.
[2]
Jon Louis Bentley, Daniel D. Sleator, Robert E. Tarjan, and Victor K. Wei. A locally adaptive data compression scheme. Communications of the ACM 29(4):520-540, 4/86.
[3]
Peter Elias. Interval and recency rank source coding: Two on-line adaptive variable-length schemes. IEEE Transactions on Information Theory IT-33(1), 1987.
[4]
M. Franz and T. Kistler. Slim binaries. TR 96-24, Dept of Information and Computer Science, University of California, Irvine, 6/96. Also htto://www.ics.uci.edu/---oberon/research.html and to appear in Communications of the A CM.
[5]
M. Franz. Adaptive compression of syntax trees and iterative dynamic code optimization: Two basic technologies for mobileobject systems. TR 97-04, Dept of Information and Computer Science, University of California, lrvine, 2/97.
[6]
Christopher W. Fraser and David R. Hanson. A Retargetable C Compiler: Design and Implementation. Addison Wesley Longman, 1995.
[7]
Christopher W. Fraser and Todd A. Proebsting. Custom instruction sets for code compression. http://www.cs.arizona.edu/?~opleltodd/papers/pldi2.ps, 10/95.
[8]
T. Kistler and M. Franz. A tree-based alternative to Java bytecodes; TR 96-58, Dept of Information and Computer Science, University of California, Irvine, 12/96.
[9]
A. Lempel and J. Ziv. On the complexity of finite sequences. IEEE Transactions on Information Theory 22(1 ):75-81, 1/76.
[10]
Ali-Reza Adl-Tabatabai, Geoff Langdale, Steven Lucco and Robert Wahbe. Efficient and language-independent mobile programs. PLDI'96:127-136, 6/96.
[11]
Todd A. Proebsting. Optimizing an ANSI C interpreter with superoperators, POPL95:322-332, 1/95.
[12]
ian H. Witten, Radford M. Neal, and John G. Cleary. Arithmetic coding for data compression. Communications of the A CM 30(6):520-540, 6/87.
[13]
Tong Lai Yu. Data compression for PC software distribution. Software-Practice & Experience 26(11 ): 1181 - 1195, 11/96.
[14]
J. Ziv and A. Lempel. Compression of individual sequences via variable-rate coding. IEEE Transactions on Information Theory 24(5):530-536, 9/78.

Cited By

View all
  • (2023)Linker Code Size Optimization for Native Mobile ApplicationsProceedings of the 32nd ACM SIGPLAN International Conference on Compiler Construction10.1145/3578360.3580256(168-179)Online publication date: 17-Feb-2023
  • (2021)ANGHABENCH: A Suite with One Million Compilable C Benchmarks for Code-Size Reduction2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)10.1109/CGO51591.2021.9370322(378-390)Online publication date: 27-Feb-2021
  • (2021)An Experience with Code-Size Optimization for Production iOS Mobile Applications2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)10.1109/CGO51591.2021.9370306(363-377)Online publication date: 27-Feb-2021
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
PLDI '97: Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
May 1997
365 pages
ISBN:0897919076
DOI:10.1145/258915
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 May 1997

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

PLDI97
Sponsor:
PLDI97: Conference on Programming Language
June 16 - 18, 1997
Nevada, Las Vegas, USA

Acceptance Rates

PLDI '97 Paper Acceptance Rate 31 of 158 submissions, 20%;
Overall Acceptance Rate 406 of 2,067 submissions, 20%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)432
  • Downloads (Last 6 weeks)35
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Linker Code Size Optimization for Native Mobile ApplicationsProceedings of the 32nd ACM SIGPLAN International Conference on Compiler Construction10.1145/3578360.3580256(168-179)Online publication date: 17-Feb-2023
  • (2021)ANGHABENCH: A Suite with One Million Compilable C Benchmarks for Code-Size Reduction2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)10.1109/CGO51591.2021.9370322(378-390)Online publication date: 27-Feb-2021
  • (2021)An Experience with Code-Size Optimization for Production iOS Mobile Applications2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)10.1109/CGO51591.2021.9370306(363-377)Online publication date: 27-Feb-2021
  • (2019)Function merging by sequence alignmentProceedings of the 2019 IEEE/ACM International Symposium on Code Generation and Optimization10.5555/3314872.3314892(149-163)Online publication date: 16-Feb-2019
  • (2019)Function Merging by Sequence Alignment2019 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)10.1109/CGO.2019.8661174(149-163)Online publication date: Feb-2019
  • (2012)Design and Implementation of the PBIW Instruction Decoder in a Softcore Embedded ProcessorProceedings of the 2012 13th Symposium on Computing Systems10.1109/WSCAD-SSC.2012.32(110-117)Online publication date: 17-Oct-2012
  • (2012)Tokenisation and compression of Java class filesJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2011.09.00258:1(1-12)Online publication date: 1-Jan-2012
  • (2012)TinyVM: an energy-efficient execution infrastructure for sensor networksSoftware—Practice & Experience10.1002/spe.112342:10(1193-1209)Online publication date: 1-Oct-2012
  • (2010)JSZapProceedings of the 2010 USENIX conference on Web application development10.5555/1863166.1863170(4-4)Online publication date: 23-Jun-2010
  • (2009)A pattern based instruction encoding technique for high performance architecturesInternational Journal of High Performance Systems Architecture10.1504/IJHPSA.2009.0320242:2(71-80)Online publication date: 1-Mar-2009
  • 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