skip to main content
10.1145/2486159.2486164acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
extended-abstract

Truly parallel burrows-wheeler compression and decompression

Published: 23 July 2013 Publication History

Abstract

We present novel work-optimal PRAM algorithms for Burrows-Wheeler (BW) compression and decompression of strings over a constant alphabet. For a string of length n, the depth of the compression algorithm is O(log2 n), and the depth of the corresponding decompression algorithm is O(log n). These appear to be the first polylogarithmic-time work-optimal parallel algorithms for any standard lossless compression scheme.
The algorithms for the individual stages of compression and decompression may also be of independent interest: 1. a novel O(log n)-time, O(n)-work PRAM algorithm for Huffman decoding; 2. original insights into the stages of the BW compression and decompression problems, bringing out parallelism that was not readily apparent. We then mapped such parallelism in interesting ways to elementary parallel routines that have O(log n)-time, O(n)-work solutions, such as: (i) prefix-sums problems with an appropriately-defined associative binary operator for several stages, and (ii) list ranking for the final stage of decompression (inverse blocksorting transform).
Companion work reports empirical speedups of up to 25x for compression and up to 13x for decompression. This reflects a speedup of 70x over recent work on BW compression on GPUs.

References

[1]
M. Burrows and D. J. Wheeler. A block-sorting lossless data compression algorithm. TR, DEC SRC, 1994.
[2]
R. Cole and U. Vishkin. Deterministic coin tossing with applications to optimal parallel list ranking. Inf. Control, 70(1):32--53, July 1986.
[3]
R. Cole and U. Vishkin. Faster optimal parallel prefix sums and list ranking. Information and Computation, 81(3):334--352, 1989.
[4]
J. A. Edwards and U. Vishkin. Parallel algorithms for Burrows-Wheeler compression and decompression. TR, UMD, 2012. http://hdl.handle.net/1903/13299.
[5]
J. A. Edwards and U. Vishkin. Empirical speedup study of truly parallel data compression. TR, UMD, 2013. http://hdl.handle.net/1903/13890.
[6]
A. Eirola. Lossless data compression on GPGPU architectures. ArXiv e-prints, 2011.
[7]
J. Gilchrist and A. Cuhadar. Parallel lossless data compression based on the Burrows-Wheeler transform. Proc. Advanced Information Networking and Applications, 877--884, May 2007.
[8]
J. Kärkkäainen, P. Sanders, and S. Burkhardt. Linear work suffix array construction. J. ACM, 53(6):918--936, Nov. 2006.
[9]
S. T. Klein and Y. Wiseman. Parallel Huffman decoding with applications to JPEG files. The Computer Journal, 46(5):487--497, 2003.
[10]
S. Lewin-Berlin. A parallel bzip2. http://software.intel.com/en-us/articles/a-parallel-bzip2, 2010.
[11]
G. Nong, S. Zhang, and W. H. Chan. Linear suffix array construction by almost pure induced-sorting. Proc. Data Compression Conference, 193--202, 2009.
[12]
R. Patel, Y. Zhang, J. Mak, A. Davidson, and J. Owens. Parallel lossless data compression on the GPU. Proc. Innovative Parallel Computing, 1--9, 2012.
[13]
S. C. Sahinalp and U. Vishkin. Symmetry breaking for suffix tree construction. Proc. STOC'94, 300--309.
[14]
J. Seward. bzip2, a program and library for data compression. http://www.bzip.org/.
[15]
J. Seward. On the performance of BWT sorting algorithms. Proc. Data Compression Conference, 173--182, 2000.
[16]
R. E. Tarjan and U. Vishkin. Finding biconnected components and computing tree functions in logarithmic parallel time. Proc. FOCS'84, 12--20.

Cited By

View all
  • (2024)Massively Parallel Inverse Block-sorting Transforms for bzip2 Decompression on GPUsProceedings of the 53rd International Conference on Parallel Processing10.1145/3673038.3673067(856-865)Online publication date: 12-Aug-2024
  • (2018)Easy PRAM-Based High-Performance Parallel Programming with ICEIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2017.275437629:2(377-390)Online publication date: 1-Feb-2018
  • (2015)Fast Burrows Wheeler Compression Using All-CoresProceedings of the 2015 IEEE International Parallel and Distributed Processing Symposium Workshop10.1109/IPDPSW.2015.53(628-636)Online publication date: 25-May-2015

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SPAA '13: Proceedings of the twenty-fifth annual ACM symposium on Parallelism in algorithms and architectures
July 2013
348 pages
ISBN:9781450315722
DOI:10.1145/2486159
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 July 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. burrows-wheeler
  2. lossless compression
  3. parallel
  4. pram

Qualifiers

  • Extended-abstract

Conference

SPAA '13

Acceptance Rates

SPAA '13 Paper Acceptance Rate 31 of 130 submissions, 24%;
Overall Acceptance Rate 447 of 1,461 submissions, 31%

Upcoming Conference

SPAA '25
37th ACM Symposium on Parallelism in Algorithms and Architectures
July 28 - August 1, 2025
Portland , OR , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Massively Parallel Inverse Block-sorting Transforms for bzip2 Decompression on GPUsProceedings of the 53rd International Conference on Parallel Processing10.1145/3673038.3673067(856-865)Online publication date: 12-Aug-2024
  • (2018)Easy PRAM-Based High-Performance Parallel Programming with ICEIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2017.275437629:2(377-390)Online publication date: 1-Feb-2018
  • (2015)Fast Burrows Wheeler Compression Using All-CoresProceedings of the 2015 IEEE International Parallel and Distributed Processing Symposium Workshop10.1109/IPDPSW.2015.53(628-636)Online publication date: 25-May-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media