Energy Aware Lossless Data Compression

Wireless transmission of a bit can require over 1000 times more energy than a single 32-bit computation. It would therefore seem desirable to perform significant computation to reduce the number of bits transmitted. If the energy required to compress data is less than the energy required to send it, there is a net energy savings and consequently, a longer battery life for portable computers. This paper reports on the energy of lossless data compressors as measured on a StrongARM SA-110 system. We show that with several typical compression tools, there is a net energy increase when compression is applied before transmission. Reasons for this increase are explained, and hardware-aware programming optimizations are demonstrated. When applied to Unix compress, these optimizations improve energy efficiency by 51%. We also explore the fact that, for many usage models, compression and decompression need not be performed by the same algorithm. By choosing the lowest-energy compressor and decompressor on the test platform, rather than using default levels of compression, overall energy to send compressible web data can be reduced 31%. Energy to send harder-to-compress English text can be reduced 57%. Compared with a system using a single optimized application for both compression and decompression, the asymmetric scheme saves 11% or 12% of the total energy depending on the dataset.

[1]  Daniel S. Hirschberg,et al.  Data compression , 1987, CSUR.

[2]  Giovanni De Micheli,et al.  Low power embedded software optimization using symbolic algebra , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[3]  David Wetherall,et al.  Increasing Effective Link Bandwidth by Supressing Replicated Data , 1998, USENIX Annual Technical Conference.

[4]  Amar Mukherjee,et al.  Network conscious text compression system (NCTCSys) , 2001, Proceedings International Conference on Information Technology: Coding and Computing.

[5]  Luca Benini,et al.  Energy-efficient design of battery-powered embedded systems , 1999, Proceedings. 1999 International Symposium on Low Power Electronics and Design (Cat. No.99TH8477).

[6]  Van Jacobson,et al.  Compressing TCP/IP Headers for Low-Speed Serial Links , 1990, RFC.

[7]  Jeffrey C. Mogul,et al.  A trace-based analysis of duplicate suppression in HTTP , 2000 .

[8]  Terry A. Welch,et al.  A Technique for High-Performance Data Compression , 1984, Computer.

[9]  Jason Flinn,et al.  Power and Energy Characterization of the Itsy Pocket Computer (Version 1.5) , 2000 .

[10]  Kyle Jamieson,et al.  Implementation of a power-saving protocol for ad hoc wireless networks , 2002 .

[11]  Clark D. Thomborson The V.42bis standard for data-compressing modems , 1992, IEEE Micro.

[12]  Wayne Burleson,et al.  A VLSI systolic array architecture for Lempel-Ziv-based data compression , 1994, Proceedings of IEEE International Symposium on Circuits and Systems - ISCAS '94.

[13]  Anantha Chandrakasan,et al.  JouleTrack: a web based tool for software energy profiling , 2001, DAC '01.

[14]  Andrew Tridgell,et al.  Efficient Algorithms for Sorting and Synchronization , 1999 .

[15]  Kelly Koskelin,et al.  EProf : an energy profiler for the iPAQ , 2004 .

[16]  Mahadev Satyanarayanan,et al.  Extending mobile computer battery life through energy-aware adaptation , 2001 .

[17]  Walter F. Tichy,et al.  An Empirical Study of Delta Algorithms , 1996, SCM.

[18]  Michelle Effros PPM performance with BWT complexity: a new method for lossless data compression , 2000, Proceedings DCC 2000. Data Compression Conference.

[19]  C. E. SHANNON,et al.  A mathematical theory of communication , 1948, MOCO.

[20]  Sujit Dey,et al.  Adaptive image compression for wireless multimedia communication , 2001, ICC 2001. IEEE International Conference on Communications. Conference Record (Cat. No.01CH37240).

[21]  David Mazières,et al.  A low-bandwidth network file system , 2001, SOSP.

[22]  Archan Misra,et al.  Power Adaptation Based Optimization for Energy Efficient Reliable Wireless Paths , 2004, NETWORKING.

[23]  Todd M. Austin,et al.  The SimpleScalar tool set, version 2.0 , 1997, CARN.

[24]  Timothy C. Bell,et al.  A corpus for the evaluation of lossless compression algorithms , 1997, Proceedings DCC '97. Data Compression Conference.

[25]  Mahadev Satyanarayanan,et al.  Experience with adaptive mobile applications in Odyssey , 1999, Mob. Networks Appl..

[26]  Wayne Burleson,et al.  Real-time VLSI compression for high-speed wireless local area networks , 1995, Proceedings DCC '95 Data Compression Conference.

[27]  Abraham Lempel,et al.  Compression of individual sequences via variable-rate coding , 1978, IEEE Trans. Inf. Theory.

[28]  Mahadev Satyanarayanan,et al.  PowerScope: a tool for profiling the energy usage of mobile applications , 1999, Proceedings WMCSA'99. Second IEEE Workshop on Mobile Computing Systems and Applications.

[29]  Ian H. Witten,et al.  Modeling for text compression , 1989, CSUR.

[30]  Abraham Lempel,et al.  A universal algorithm for sequential data compression , 1977, IEEE Trans. Inf. Theory.

[31]  Barron C. Housel,et al.  WebExpress: a system for optimizing Web browsing in a wireless environment , 1996, MobiCom '96.

[32]  Deborah A. Wallach,et al.  Power Evaluation of Itsy Version 2.3 , 2000 .

[33]  Leandros Tassiulas,et al.  Energy conserving routing in wireless ad-hoc networks , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[34]  Ragunathan Rajkumar,et al.  Critical power slope: understanding the runtime effects of frequency scaling , 2002, ICS '02.

[35]  Anantha Chandrakasan,et al.  Algorithmic transforms for efficient energy scalable computation , 2000, ISLPED'00: Proceedings of the 2000 International Symposium on Low Power Electronics and Design (Cat. No.00TH8514).

[36]  D. J. Wheeler,et al.  A Block-sorting Lossless Data Compression Algorithm , 1994 .

[37]  Khalid Sayood,et al.  Introduction to data compression (2nd ed.) , 2000 .

[38]  B. Hohlt,et al.  Flexible power scheduling for sensor networks , 2004, Third International Symposium on Information Processing in Sensor Networks, 2004. IPSN 2004.

[39]  Ian H. Witten,et al.  Data Compression Using Adaptive Coding and Partial String Matching , 1984, IEEE Trans. Commun..

[40]  Ronny Krashinsky,et al.  Efficient Web Browsing for Mobile Clients using HTTP Compression , 1910 .

[41]  Robert J. McEliece,et al.  The Theory of Information and Coding , 1979 .

[42]  Khalid Sayood,et al.  Introduction to Data Compression , 1996 .

[43]  Richard T. Witek,et al.  A 160 MHz 32 b 0.5 W CMOS RISC microprocessor , 1996, 1996 IEEE International Solid-State Circuits Conference. Digest of TEchnical Papers, ISSCC.

[44]  Anja Feldmann,et al.  Potential benefits of delta encoding and data compression for HTTP , 1997, SIGCOMM '97.

[45]  P.J.M. Hayinga Energy efficiency of error correction on wireless systems , 1999, WCNC. 1999 IEEE Wireless Communications and Networking Conference (Cat. No.99TH8466).

[46]  Luca Benini,et al.  Source code optimization and profiling of energy consumption in embedded systems , 2000, ISSS '00.

[47]  Srinivasan Seshan,et al.  A unified header compression framework for low-bandwidth links , 2000, MobiCom '00.

[48]  Timothy C. Bell,et al.  Longest‐match string searching for ziv‐lempel compression , 1993, Softw. Pract. Exp..

[49]  Dmitry A. Shkarin,et al.  PPM: one step to practicality , 2002, Proceedings DCC 2002. Data Compression Conference.

[50]  Andrew Wolfe,et al.  Executing compressed programs on an embedded RISC architecture , 1992, MICRO 1992.

[51]  Jörg Henkel,et al.  Code compression for low power embedded system design , 2000, Proceedings 37th Design Automation Conference.