skip to main content
10.1145/1593105.1593217acmotherconferencesArticle/Chapter ViewAbstractPublication Pagesacm-seConference Proceedingsconference-collections
research-article

Improving code compression using clustered modalities

Published:28 March 2008Publication History

ABSTRACT

Instruction pressure is the level of time, space, and power required to manage the instruction stream to support high-speed execution of modern multicore general processor and embedded controller based computing. L1 instruction cache and processor pin bandwidth are examples of direct resource costs imposed by the instruction access demand of a processor architecture. This paper explores the potential for reducing instruction pressure through a combination of variable length binary instruction set and Huffman encoding to reduce the average number of bits per instruction compared to a typical fixed-length fixed-code binary instruction set. The PRECISE (Processor Register Extensions for Collapsed Instruction Set Encoding) methodology addresses the data type, opcode, and register access components of the instruction stream. This paper focuses on opcode compression through a set of benchmark-driven experiments to identify clusters of near optimal ISA fits. The results demonstrate that a small number of distinct binary ISAs can provide reasonably good fits across a broad range of application benchmarks.

References

  1. The rsim project. http://rsim.cs.uiuc.edu/rsim/.Google ScholarGoogle Scholar
  2. Rsiml. http://www.ece.lsu.edu/koppel/work/proc.html.Google ScholarGoogle Scholar
  3. Shade. http://cooltools.sunsource.net/shade/.Google ScholarGoogle Scholar
  4. Sun c programming language compiler. http://developers.sun.com/sunstudio/.Google ScholarGoogle Scholar
  5. K. D. Cooper and N. McIntosh. Enhanced code compression for embedded risc processors. In PLDI '99: Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation, pages 139--149, New York, NY, USA, 1999. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. I. Corporation. Intel Architecture Software Developers Manual Volume 2: Instruction Set Reference, 1997.Google ScholarGoogle Scholar
  7. J. L. Henning. Spec cpu2000: Measuring cpu performance in the new millennium. COMPUTER, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Huffman. A method for the construction of minimum-redundancy codes. In Proceedings of the IRE, pages 1098--1101, 1952.Google ScholarGoogle ScholarCross RefCross Ref
  9. IBM. PowerPC Code Compression Utility User's Manual Version 3.0, 1998.Google ScholarGoogle Scholar
  10. C. Lefurgy, P. Bird, I.-C. Chen, and T. Mudge. Improving code density using compression techniques. In MICRO 30: Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, pages 194--203, Washington, DC, USA, 1997. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S. Liao, S. Devadas, K. Keutzer, S. Tjiang, and A. Wang. Storage assignment to decrease code size. ACM Trans. Program. Lang. Syst., 18(3):235--253, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. S. P. Lloyd. Least squares quantization in pcm. IEEE Transactions on Information Theory, 28(2):129--137, 1982.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. B. MacQueen. Some methods for classification and analysis of multivariate observations. In Proceedings of 5th Berkeley Symposium on Mathematical Statistics and Probability, pages 281--297. Berkeley, University of California Press, 1967.Google ScholarGoogle Scholar
  14. I. SPARC International. The SPARC Architecture Manual Version 9, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. I. Sun Microsystems. SpixTools Users Manual. Palo Alto, CA, USA, 2004.Google ScholarGoogle Scholar
  16. A. Wolfe and A. Chanin. Executing compressed programs on an embedded risc architecture. In MICRO 25: Proceedings of the 25th annual international symposium on Microarchitecture, pages 81--91, Los Alamitos, CA, USA, 1992. IEEE Computer Society Press. Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Other conferences
    ACM-SE 46: Proceedings of the 46th Annual Southeast Regional Conference on XX
    March 2008
    548 pages
    ISBN:9781605581057
    DOI:10.1145/1593105

    Copyright © 2008 ACM

    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]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 28 March 2008

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    Overall Acceptance Rate178of377submissions,47%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader