Publication | Closed Access
Escher: A CNN Accelerator with Flexible Buffering to Minimize Off-Chip Transfer
107
Citations
33
References
2017
Year
Unknown Venue
Convolutional Neural NetworkEngineeringMachine LearningHardware AccelerationCnn AcceleratorHigh-performance ArchitectureOff-chip TransferConvolutional Neural NetworksComputer EngineeringComputer ArchitectureDomain-specific AcceleratorComputer ScienceCnn AcceleratorsParallel ComputingDeep LearningNeural Architecture SearchModel Compression
Convolutional neural networks (CNNs) are used to solve many challenging machine learning problems. Interest in CNNs has led to the design of CNN accelerators to improve CNN evaluation throughput and efficiency. Importantly, the bandwidth demand from weight data transfer for modern large CNNs causes CNN accelerators to be severely bandwidth bottlenecked, prompting the need for processing images in batches to increase weight reuse. However, existing CNN accelerator designs limit the choice of batch sizes and lack support for batch processing of convolutional layers. We observe that, for a given storage budget, choosing the best batch size requires balancing the input and weight transfer. We propose Escher, a CNN accelerator with a flexible data buffering scheme that ensures a balance between the input and weight transfer bandwidth, significantly reducing overall bandwidth requirements. For example, compared to the state-of-the-art CNN accelerator designs targeting a Virtex-7 690T FPGA, Escher reduces the accelerator peak bandwidth requirements by 2.4x across both fully-connected and convolutional layers on fixed-point AlexNet, and reduces convolutional layer bandwidth by up to 10.5x on fixed-point GoogleNet.
| Year | Citations | |
|---|---|---|
Page 1
Page 1