EBPC: Extended Bit-Plane Compression for Deep Neural Network Inference and Training Accelerators

Lukas Cavigelli, Georg Rutishauser, Luca Benini
8/30/2019
cs.CVcs.AReess.IV

Official code: pulp-platform/stream-ebpc (25 stars, last commit 2020-07-14). 1 more implementation below.

Abstract

In the wake of the success of convolutional neural networks in image classification, object recognition, speech recognition, etc., the demand for deploying these compute-intensive ML models on embedded and mobile systems with tight power and energy constraints at low cost, as well as for boosting throughput in data centers, is growing rapidly. This has sparked a surge of research into specialized hardware accelerators. Their performance is typically limited by I/O bandwidth, power consumption is dominated by I/O transfers to off-chip memory, and on-chip memories occupy a large part of the silicon area. We introduce and evaluate a novel, hardware-friendly, and lossless compression scheme for the feature maps present within convolutional neural networks. We present hardware architectures and synthesis results for the compressor and decompressor in 65nm. With a throughput of one 8-bit word/cycle at 600MHz, they fit into 2.8kGE and 3.0kGE of silicon area, respectively - together the size of less than seven 8-bit multiply-add units at the same throughput. We show that an average compression ratio of 5.1x for AlexNet, 4x for VGG-16, 2.4x for ResNet-34 and 2.2x for MobileNetV2 can be achieved - a gain of 45-70% over existing methods. Our approach also works effectively for various number formats, has a low frame-to-frame variance on the compression ratio, and achieves compression factors for gradient map compression during training that are even better than for inference.

View on arXivView PDF

Code Implementations(2)

Provides the hardware code for the paper "EBPC: Extended Bit-Plane Compression for Deep Neural Network Inference and Training Accelerators" by Lukas Cavigelli, Georg Rutishauser, Luca Benini.

2510Tcl, ShellOct 2, 20196 years agoNOASSERTION
Apache-2.0

Provides the code for the paper "EBPC: Extended Bit-Plane Compression for Deep Neural Network Inference and Training Accelerators" by Lukas Cavigelli, Georg Rutishauser, Luca Benini.

175Python, Jupyter NotebookAug 29, 20197 years agoApache-2.0
compression-algorithmcompression-implementationsdeep-learningdeep-neural-networkshardware-acceleration

Similar Papers

Cite this paper

@article{cavigelli2019ebpc,
  title  = {EBPC: Extended Bit-Plane Compression for Deep Neural Network Inference and Training Accelerators},
  author = {Lukas Cavigelli and Georg Rutishauser and Luca Benini},
  year   = {2019},
  eprint = {1908.11645},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1908.11645}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1908.11645.svg)](https://codeofpaper.com/paper/1908.11645)

Discussion