Abstract
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.
Similar content being viewed by others
References
Cinque, L., De Agostino, S., Lombardi, L.: Speeding up lossless image compression: experimental results on a parallel machine. In: Proceedings Prague Stringology Conference, pp. 35–45 (2008)
De Agostino, S.: Parallel implementations of dictionary text compression without communication. In: London Stringology Days and London Algorithmics Workshop (2009)
De Agostino, S.: Compressing bi-level images by block matching on a tree architecture. In: Proceedings Prague Stringology Conference, pp. 137–145 (2009)
Lempel A., Ziv J.: A universal algorithm for sequential data compression. IEEE Trans. Inf. Theory 23, 337–343 (1977)
Hartman A., Rodeh M.: Optimal Parsing of Strings Combinatorial Algorithms on Words, pp. 155–167. Springer, Berlin (1985)
Crochemore M., Rytter W.: Jewels of Stringology. World Scientific, Singapore (2003)
De Agostino S.: Parallelism and dictionary-based data compression. Inf. Sci. 135, 43–56 (2001)
Hirschberg D.S., Stauffer L.M.: Dictionary compression on the PRAM. Parallel Process. Lett. 7, 297–308 (1997)
Nagumo, H., Lu, M., Watson, K.L.: Parallel parsing algorithms for static dictionary compression. In: Proceedings IEEE Data Compression Conference, pp. 162–171 (1995)
Belinskaya, D., De Agostino, S., Storer, J.A.: Near optimal compression with respect to a static dictionary on a practical massively parallel architecture. In: Proceedings IEEE Data Compression Conference, pp. 172–181 (1995)
Bell T.C., Cleary J.G., Witten I.H.: Text Compression. Prentice Hall, Englewood Cliffs (1990)
Rissanen J., Langdon G.G.: Universal modeling and coding. IEEE Trans. Inf. Theory 27, 12–23 (1981)
Rissanen J.: Generalized kraft inequality and arithmetic coding. IBM J. Res. Dev. 20, 198–203 (1976)
Howard P.G., Kossentini F., Martinis B., Forchammer S., Rucklidge W.J., Ono F.: The emerging JBIG2 standard. IEEE Trans. Circ. Syst. Video Technol. 8, 838–848 (1998)
Wu X., Memon N.D.: Context-based, adaptive, lossless image coding. IEEE Trans. Commun. 45, 437–444 (1997)
Storer, J.A.: Lossless image compression using generalized LZ1-type methods. In: Proceedings IEEE Data Compression Conference, pp. 290–299 (1996)
Storer J.A., Helfgott H.H.: Lossless image compression by block matching. Comput. J. 40, 137–145 (1997)
Cinque, L., De Agostino, S.: Lossless image compression by block matching on practical massively parallel architectures. In: Proceedings Prague Stringology Conference, pp. 26–34 (2008)
Cinque L., De Agostino S., Liberati F., Westgeest B.: A simple lossless compression heuristic for grey scale images. Int. J. Found. Comput. Sci. 16, 1111–1119 (2005)
Howard, P.G., Vitter, J.S.: Fast and efficient lossless image compression. IEEE Data Compression Conference, pp. 351–360 (1993)
Rice, R.F.: Some practical universal noiseless coding technique—part I. Technical Report JPL-79-22 Jet Propulsion Laboratory, Pasadena, California, USA (1979)
Golomb S.W.: Run-length encodings. IEEE Trans. Inf. Theory 12, 399–401 (1966)
Weimberger, M.J., Seroussi, G., Sapiro, G.: LOCO-I: A low complexity, context based, lossless image compression algorithm. In: Proceedings IEEE Data Compression Conference, pp. 140–149 (1996)
Mc Creight E.M.: A space-economical suffix tree construction algorithm. J. ACM 23, 262–272 (1976)
Rodeh M., Pratt V.R., Even S.: Linear algorithms for compression via string matching. J. ACM 28, 16–24 (1980)
Fiala E.R., Green D.H.: Data compression with finite windows. Commun. of ACM 32, 490–505 (1988)
Waterworth, J.R.: Data compression system. US Patent 4,701,745 (1987)
Brent R.P.: A linear algorithm for data compression. Aust. Comput. J. 19, 64–68 (1987)
Whiting, D.A., George, G.A., Ivey, G.E.: Data compression apparatus and method. US Patent 5016009 (1991)
Gailly, J., Adler, M.: http://www.gzip.org (1991)
Wagner R.A.: Common phrases and minimum text storage. Commun. ACM 16, 148–152 (1973)
Tarjan R.E., Vishkin U.: An efficient parallel biconnectivity algorithm. SIAM J. Comput. 14, 862–874 (1985)
Cole R., Vishkin U.: Approximate parallel scheduling. Part I: the basic technique with applications to optimal parallel list ranking in logarithmic time. SIAM J. Comput. 17, 128–152 (1988)
Brent R.P.: The parallel evaluation of general arithmetic expressions. J. ACM 21, 201–206 (1974)
De Agostino S.: Almost work-optimal PRAM EREW decoders of LZ-compressed text. Parallel Process. Lett. 14, 351–359 (2004)
Cinque L., De Agostino S., Lombardi L.: Lossless image compression by block matching on practical parallel architectures. Texts Algorithm. Monogr. Ser. King’s Coll. Publ. 11, 136–151 (2009)
Leighton F.T.: Introduction to Parallel Algorithms and Architectures. Morgan Kaufmann, Menlo Park (1992)
Ziv J., Lempel A.: Compression of individual sequences via variable-rate coding. IEEE Trans. Inf. Theory 24, 530–536 (1978)
Welch T.A.: A technique for high-performance data compression. IEEE Comput. 17, 8–19 (1984)
De Agostino S.: P-complete problems in data compression. Theor. Comput. Sci. 127, 181–186 (1994)
De Agostino S., Silvestri R.: Bounded size dictionary compression: SCk-completeness and NC algorithms. Inf. Comput. 180, 101–112 (2003)
De Agostino S., Storer J.A.: On-line versus off-line computation for dynamic text compression. Inf. Process. Lett. 59, 169–174 (1996)
De Agostino S., Silvestri R.: A worst case analisys of the LZ2 compression algorithm. Inf. Comput. 139, 258–268 (1997)
Apostolico A.: Fast gapped variants for Lempel-Ziv-Welch compression. Inf. Comput. 205, 1012–1026 (2007)
Author information
Authors and Affiliations
Corresponding author
Additional information
The work was supported by the Italian Research Project PRIN and preliminary results were presented in [1-3].
Rights and permissions
About this article
Cite this article
Cinque, L., De Agostino, S. & Lombardi, L. Scalability and Communication in Parallel Low-Complexity Lossless Compression. Math.Comput.Sci. 3, 391–406 (2010). https://doi.org/10.1007/s11786-010-0034-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11786-010-0034-5