Scalability and Communication in Parallel Low-Complexity Lossless Compression

Approximation schemes for optimal compression with static and sliding dictionaries which can run on a simple array of processors with distributed memory and no interconnections are presented. These approximation algorithms can be implemented on both small and large scale parallel systems. The sliding dictionary method requires large size files on large scale systems. As far as lossless image compression is concerned, arithmetic encoders enable the best lossless compressors but they are often ruled out because they are too complex. Storer extended dictionary text compression to bi-level images to avoid arithmetic encoders (BLOCK MATCHING). We were able to partition an image into up to a hundred areas and to apply the BLOCK MATCHING heuristic independently to each area with no loss of compression effectiveness. Therefore, the approach is suitable for a small scale parallel system at no communication cost. On the other hand, bi-level image compression seems to require communication on large scale systems. With regard to grey scale and color images, parallelizable lossless image compression (PALIC) is a highly parallelizable and scalable lossless compressor since it is applied independently to blocks of 8 × 8 pixels. We experimented the BLOCK MATCHING and PALIC heuristics with up to 32 processors of a 256 Intel Xeon 3.06 GHz processors machine (http://avogadro.cilea.it) on a test set of large topographic bi-level images and color images in RGB format. We obtained the expected speed-up of the compression and decompression times, achieving parallel running times about 25 times faster than the sequential ones. Finally, scalable algorithms computing static and sliding dictionary optimal text compression on an exclusive read, exclusive write shared memory parallel machine are presented. On the same model, compression by block matching of bi-level images is shown which can be implemented on a full binary tree architecture under some realistic assumptions with no scalability issues.

[1]  Luigi Cinque,et al.  Lossless Image Compression by Block Matching on Practical Massively Parallel Architectures , 2008, Stringology.

[2]  Alan Hartman,et al.  Optimal Parsing of Strings , 1985 .

[3]  Michael J. Flynn,et al.  Parallel architectures , 1996, CSUR.

[4]  Sergio De Agostino,et al.  Bounded size dictionary compression: SCk-completeness and NC algorithms , 2003, Inf. Comput..

[5]  Jorma Rissanen,et al.  Generalized Kraft Inequality and Arithmetic Coding , 1976, IBM J. Res. Dev..

[6]  Luigi Cinque,et al.  Speeding up Lossless Image Compression: Experimental Results on a Parallel Machine , 2008, Stringology.

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

[8]  Ian H. Witten,et al.  Text Compression , 1990, 125 Problems in Text Algorithms.

[9]  Sergio De Agostino P-complete Problems in Data Compression , 1994, Theor. Comput. Sci..

[10]  Robert A. Wagner,et al.  Common phrases and minimum-space text storage , 1973, CACM.

[11]  Daniel S. Hirschberg,et al.  Dictionary Compression on the PRAM , 1997, Parallel Process. Lett..

[12]  James A. Storer,et al.  On-Line Versus Off-Line Computation in Dynamic Text Compression , 1996, Inf. Process. Lett..

[13]  Mi Lu,et al.  Parallel Parsing Algorithms for Static Dictionary Compression , 1999, IEEE Trans. Parallel Distributed Syst..

[14]  Nasir D. Memon,et al.  Context-based, adaptive, lossless image coding , 1997, IEEE Trans. Commun..

[15]  Edward R. Fiala,et al.  Data compression with finite windows , 1989, CACM.

[16]  Richard Cole,et al.  Approximate Parallel Scheduling. Part I: The Basic Technique with Applications to Optimal Parallel List Ranking in Logarithmic Time , 1988, SIAM J. Comput..

[17]  S. Golomb Run-length encodings. , 1966 .

[18]  Sergio De Agostino Parallelism and dictionary based data compression , 2001, Inf. Sci..

[19]  James A. Storer,et al.  Lossless Image Compression by Block Matching , 1997, Comput. J..

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

[21]  Sergio De Agostino,et al.  A Worst-Case Analysis of the LZ2 Compression Algorithm , 1997, Inf. Comput..

[22]  Robert E. Tarjan,et al.  An Efficient Parallel Biconnectivity Algorithm , 2011, SIAM J. Comput..

[23]  James A. Storer,et al.  Lossless image compression using generalized LZ1-type methods , 1996, Proceedings of Data Compression Conference - DCC '96.

[24]  James A. Storer,et al.  Near optimal compression with respect to a static dictionary on a practical massively parallel architecture , 1995, Proceedings DCC '95 Data Compression Conference.

[25]  Guillermo Sapiro,et al.  LOCO-I: a low complexity, context-based, lossless image compression algorithm , 1996, Proceedings of Data Compression Conference - DCC '96.

[26]  Luigi Cinque,et al.  A simple lossless compression heuristic for grey scale images , 2005, Int. J. Found. Comput. Sci..

[27]  Mi Lu,et al.  Parallel algorithms for the static dictionary compression , 1995, Proceedings DCC '95 Data Compression Conference.

[28]  Alberto Apostolico,et al.  Fast gapped variants for Lempel-Ziv-Welch compression , 2007, Inf. Comput..

[29]  Wojciech Rytter,et al.  Jewels of stringology , 2002 .

[30]  Edward M. McCreight,et al.  A Space-Economical Suffix Tree Construction Algorithm , 1976, JACM.

[31]  P.G. Howard,et al.  Fast and efficient lossless image compression , 1993, [Proceedings] DCC `93: Data Compression Conference.

[32]  Luigi Cinque,et al.  Lossless Image Compression by Block Matching on Practical Parallel Architectures , 2009 .

[33]  Faouzi Kossentini,et al.  The emerging JBIG2 standard , 1998, IEEE Trans. Circuits Syst. Video Technol..

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

[35]  Sergio De Agostino,et al.  Compressing Bi-Level Images by Block Matching on a Tree Architecture , 2009, Stringology.

[36]  Michael Rodeh,et al.  Linear Algorithm for Data Compression via String Matching , 1981, JACM.

[37]  Richard P. Brent,et al.  The Parallel Evaluation of General Arithmetic Expressions , 1974, JACM.

[38]  Richard P. Brent,et al.  A Linear Algorithm for Data Compression , 1987, Aust. Comput. J..

[39]  Glen G. Langdon,et al.  Universal modeling and coding , 1981, IEEE Trans. Inf. Theory.

[40]  Solomon W. Golomb,et al.  Run-length encodings (Corresp.) , 1966, IEEE Trans. Inf. Theory.

[41]  Sergio De Agostino,et al.  Almost work-optimal pram erew decoders of LZ compressed text , 2003, Parallel Process. Lett..