ComputingComputer ScienceHigh-performance ComputingComputer ArchitectureParallel AlgorithmsParallel ComputingData CompressionData ParallelismGraphics Processing Unit ArchitectureGraphics Processing Unit ComputingGraphics Processing UnitsParallel ArchitecturesCompressionDictionary CompressionDictionary-based CompressionGpu AcceleratorsGpu ArchitectureGpu Parallel AlgorithmsSerializationThread Parallelism
The need for data compression has grown for better utilization of network bandwidth and data storage space. LZ77 is the most widely used data compression method, which has many variants in practical applications. The biggest obstacle that prevents data compression from being used in high-speed applications is its high computation overhead. In this paper, we focus on parallelizing LZSS that is a derivative of LZ77 on GPU using the NVIDIA CUDA framework to improve the compression speed. Based on in-depth understanding of LZSS's dictionary-based compression mechanism and GPU's architectural features, we propose an effective method to parallelize LZSS compression algorithm on GPU. The biggest merit of this method is that it eliminates threads serialization by carefully redesign the algorithm process. Experiments on an NVIDIA GTX 590 machine with 13 benchmark files from real world demonstrate the effectiveness of our method, which achieves 2x speedup over existing work.
7
Accelerating CUDA graph algorithms at maximum warp
Sungpack Hong, Sang Kyun Kim, Tayo Oguntebi et al. · 2011 · 337 citations
CULZSS: LZSS Lossless Data Compression on CUDA
Adnan Özsoy, Martin Swany · 2011 · 83 citations
Parallel suffix array and least common prefix for the GPU
Mrinal Deo, S. Keely · 2013 · 41 citations