Parallel huffman decoding: presenting a fast and scalable algorithm for increasingly multicore devices

Beau Johnston, Eric McCreath

    Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

    5 Citations (Scopus)

    Abstract

    Huffman encoding provides a simple approach for lossless compression of sequential data. The length of encoded symbols varies and these symbols are tightly packed in the compressed data. Thus, Huffman decoding is not easily par-allelisable. This is unfortunate since it is desirable to have a parallel algorithm which scales with the increased core count of modern systems. This paper presents a parallel approach for decoding Huffman codes which work by decoding from every location in the bit sequence then concurrently combining the results into the uncompressed sequence. Although requiring more operations than serial approaches the presented approach is able to produce results marginally faster, on sufficiently large data sets, then that of a simple serial implementation. This is achieved by using the large number of threads available on modern GPUs. A variety of implementations, primarily OpenCL, are presented to demonstrate the scaling of this algorithm on CPU and GPU hardware in response to cores available. As devices with more cores become available, the importance of such an algorithm will increase.

    Original languageEnglish
    Title of host publicationProceedings - 15th IEEE International Symposium on Parallel and Distributed Processing with Applications and 16th IEEE International Conference on Ubiquitous Computing and Communications, ISPA/IUCC 2017
    EditorsGregorio Martinez, Richard Hill, Geoffrey Fox, Peter Mueller, Guojun Wang
    PublisherInstitute of Electrical and Electronics Engineers Inc.
    Pages949-958
    Number of pages10
    ISBN (Electronic)9781538637906
    DOIs
    Publication statusPublished - 25 May 2018
    Event15th IEEE International Symposium on Parallel and Distributed Processing with Applications and 16th IEEE International Conference on Ubiquitous Computing and Communications, ISPA/IUCC 2017 - Guangzhou, China
    Duration: 12 Dec 201715 Dec 2017

    Publication series

    NameProceedings - 15th IEEE International Symposium on Parallel and Distributed Processing with Applications and 16th IEEE International Conference on Ubiquitous Computing and Communications, ISPA/IUCC 2017

    Conference

    Conference15th IEEE International Symposium on Parallel and Distributed Processing with Applications and 16th IEEE International Conference on Ubiquitous Computing and Communications, ISPA/IUCC 2017
    Country/TerritoryChina
    CityGuangzhou
    Period12/12/1715/12/17

    Fingerprint

    Dive into the research topics of 'Parallel huffman decoding: presenting a fast and scalable algorithm for increasingly multicore devices'. Together they form a unique fingerprint.

    Cite this