| Procedure based program compression |
| Full text |
Publisher Site
,
Pdf
(1.15 MB)
|
| Source
|
International Symposium on Microarchitecture
archive
Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture
table of contents
Research Triangle Park, North Carolina, United States
Pages: 204 - 213
Year of Publication: 1997
ISBN:0-8186-7977-8
|
|
Authors
|
|
Darko Kirovski
|
The Departments of Computer Science, The University of California at Los Angeles
|
|
Johnson Kin
|
Electrical Engineering, The University of California at Los Angeles
|
|
William H. Mangione-Smith
|
Electrical Engineering, The University of California at Los Angeles
|
|
| Sponsors |
|
| Publisher |
IEEE Computer Society
Washington, DC, USA
|
| Bibliometrics |
Downloads (6 Weeks): 1, Downloads (12 Months): 8, Citation Count: 25
|
|
|
ABSTRACT
Cost and power consumption are two of the most important design factors for many embedded systems, particularly consumer devices. Products such as personal digital assistants, pagers with integrated data services and smart phones have fixed performance requirements but unlimited appetites for reduced cost and increased battery life. Program compression is one technique that can be used to attack both of these problems. Compressed programs require less memory, thus reducing the cost of both direct materials and manufacturing. Furthermore, by relying on compressed memory, the total number of memory references is reduced. This reduction saves power by lowering the traffic on high-capacitance buses. This paper discusses a new approach to implementing transparent program compression that requires little or no hardware support. Procedures are compressed individually, and a directory structure is used to bind them together at run-time. Decompressed procedures are explicitly cached in ordinary RAM as complete units, thus resolving references within each procedure. This approach has been evaluated on a set of 25 embedded multimedia and communications applications, and results in an average memory reduction of 40% with a run-time performance overhead of 10%.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
 |
2
|
|
| |
3
|
|
| |
4
|
D.A. Huffman, "A Method for the Construction of Minimum Redundancy Codes," Proceedings of the IEEE, vol. 40, pp. 1098-1101, 1952.
|
| |
5
|
|
 |
6
|
Jens Ernst , William Evans , Christopher W. Fraser , Todd A. Proebsting , Steven Lucco, Code compression, Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation, p.358-365, June 16-18, 1997, Las Vegas, Nevada, United States
|
 |
7
|
|
 |
8
|
Pohua P. Chang , Scott A. Mahlke , William Y. Chen , Nancy J. Warter , Wen-mei W. Hwu, IMPACT: an architectural framework for multiple-instruction-issue processors, Proceedings of the 18th annual international symposium on Computer architecture, p.266-275, May 27-30, 1991, Toronto, Ontario, Canada
|
| |
9
|
C. Lee, M. Potkonjak, and W. H. Mangione-Smith, "MediaBench: A Tool for Evaluating Multimedia and Communications Systems," Micro 30, 1997.
|
| |
10
|
R. N. Williams, "An Extremely Fast ZivoLempel Data Compression Algorithm," Data Compression Conference, 1991.
|
| |
11
|
|
CITED BY 25
|
|
|
|
|
Oliver Rüthing , Jens Knoop , Bernhard Steffen, Sparse code motion, Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.170-183, January 19-21, 2000, Boston, MA, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
INDEX TERMS
Primary Classification:
E.
Data
Additional Classification:
C.
Computer Systems Organization
G.
Mathematics of Computing
G.4
MATHEMATICAL SOFTWARE
Subjects:
Algorithm design and analysis
J.
Computer Applications
J.7
COMPUTERS IN OTHER SYSTEMS
Subjects:
Consumer products
General Terms:
Algorithms,
Design,
Experimentation,
Measurement,
Performance,
Theory
Keywords:
RAM,
battery life,
cached procedures,
communications applications,
compressed memory,
consumer devices,
cost,
design factors,
directory structure,
embedded systems,
high-capacitance bus traffic,
integrated data services,
memory reduction,
memory references,
multimedia applications,
pagers,
performance requirements,
personal digital assistants,
power consumption,
procedural reference resolution,
procedure-based program compression,
run-time performance overhead,
smart telephones,
source coding,
transparent program compression
|