Code compression

被引:15
作者
Ernst, J
Evans, W
Fraser, CW
Lucco, S
Proebsting, TA
机构
[1] Dept. of Computer Science, Gould Simpson Building, Tucson
[2] Redmond, WA 98052, One Microsoft Way
关键词
D O I
10.1145/258916.258947
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
current research in compiler optimization counts mainly CPU rime 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 pet 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 gee.
引用
收藏
页码:358 / 365
页数:8
相关论文
共 15 条
[1]  
ADLTABATABAI AR, PLDI 96, P127
[2]  
Bell T. C., 1990, TEXT COMPRESSION
[3]  
BENTLEY JL, COMMUN ACM, V29, P520
[4]  
ELIAS P, 1987, IEEE T INFORMATION T, V33
[5]  
FRANZ M, 9704 TR U CAL DEP IN
[6]  
FRANZ M, 9624 TR U CAL DEP IN
[7]  
Fraser C., 1995, A Retargetable C Compiler: Design and Implementation
[8]  
FRASER CW, CUSTOM INSTRUCTION S
[9]  
KISTLER T, 9658 TR U CAL DEP IN
[10]   COMPLEXITY OF FINITE SEQUENCES [J].
LEMPEL, A ;
ZIV, J .
IEEE TRANSACTIONS ON INFORMATION THEORY, 1976, 22 (01) :75-81