Survey of Code-Size Reduction Methods

Árpád Beszédes, Rudolf Ferenc, Tibor Gyimóthy, André Dolenc and Konsta Karsisto
Program code compression is an emerging research activity that is having an impact in several production areas such as networking and embedded systems. This is because the reduced-sized code can have a positive impact on network traffic and embedded system costs such as memory requirements and power consumption. Although code-size reduction is a relatively new research area, numerous publications already exist on it. The methods published usually have different motivations and a variety of application contexts. They may use different principles and their publications often use diverse notations. To our knowledge, there are no publications that present a good overview of this broad range of methods and give a useful assessment. This article surveys twelve methods and several related works appearing in some 50 papers published up to now. We provide extensive assessment criteria for evaluating the methods and offer a basis for comparison. We conclude that it is fairly hard to make any fair comparisons of the methods or draw conclusions about their applicability.

Categories and Subject Descriptors: A.1 [General Literature] - introductory and Survey; C.4 [Performance of Systems] - performance attributes; E.4 [Coding and Information Theory] - data compaction and compression

General Terms:
Algorithms, Measurement

Additional Key Words and Phrases:
Code compaction, code compression, method assessment, method evaluation