Gzip on a chip

Mohamed S. Abdelfattah, Andrei Hagiescu, Deshanand Singh
2014 Proceedings of the International Workshop on OpenCL 2013 & 2014 - IWOCL '14  
Hardware implementation of lossless data compression is important for optimizing the capacity/cost/power of storage devices in data centers, as well as communication channels in high-speed networks. In this work we use the Open Computing Language (OpenCL) to implement high-speed data compression (Gzip) on a field-programmable gate-arrays (FPGA). We show how we make use of a heavily-pipelined custom hardware implementation to achieve the high throughput of~3 GB/s with more than 2× compression
more » ... n 2× compression ratio over standard compression benchmarks. When compared against a highly-tuned CPU implementation, the performance-per-watt of our OpenCL FPGA implementation is 12× better and compression ratio is on-par. Additionally, we compare our implementation to a hand-coded commercial implementation of Gzip to quantify the gap between a high-level language like OpenCL, and a hardware description language like Verilog. OpenCL performance is 5.3% lower than Verilog, and area is 2% more logic and 25% more of the FPGA's available memory resources but the productivity gains are significant. * With Altera Toronto Technology Center during this work.
doi:10.1145/2664666.2664670 dblp:conf/iwocl/AbdelfattahHS14 fatcat:wswzkt2mefazlbt5zwmabogela