# Caffe Barista: Brewing Caffe with FPGAs in the Training Loop

**Authors:** Diederik Adriaan Vink, Aditya Rajagopal, Stylianos I. Venieris, Christos-Savvas Bouganis  
**arXiv:** [2006.13829](https://arxiv.org/abs/2006.13829)  
**Date:** 2020-06-18  
**Summary page:** https://www.summarizepaper.com/en/paper/2006.13829v1/

## Key points

- Complexity of deep learning models increasing, leading to higher compute requirements
- Deployment of Convolutional Neural Networks (CNNs) involves training and inference phases
- Inference typically performed on resource-constrained devices
- Research in low-power inference on custom hardware accelerators
- CNN training done on power-hungry GPUs in large-scale data centers
- CNN training on FPGAs a relatively new area of research due to lack of tools for prototyping and deployment
- Barista is an automated toolflow that integrates FPGAs into CNN training within Caffe framework
- Barista provides versatile and rapid deployment of hardware and algorithms for FPGA-based CNN training
- Barista serves as infrastructure for further research and development in this field
- Enables researchers to prototype and deploy various hardware and algorithmic techniques easily
- Currently the only tool available with comprehensive support for FPGA-based CNN training within Caffe framework
- Contributes to advancing low-power deep learning by providing a much-needed toolflow for FPGA-based CNN training
- Allows efficient utilization of resources during model development
- Paves the way for improved performance and energy efficiency in DL applications.

## Summary

The complexity of deep learning (DL) models has been increasing, leading to higher compute requirements. The deployment of Convolutional Neural Networks (CNNs) involves two phases: training and inference. While the inference task is typically performed on resource-constrained devices, there has been significant research in low-power inference on custom hardware accelerators. On the other hand, training CNNs is more computationally and memory-intensive and is primarily done on power-hungry GPUs in large-scale data centers. However, CNN training on Field-Programmable Gate Arrays (FPGAs) is a relatively new area of research. This is mainly because there is a lack of tools that allow for easy prototyping and deployment of hardware and algorithmic techniques for power-efficient CNN training on FPGAs. To address this limitation, the authors present Barista - an automated toolflow that seamlessly integrates FPGAs into the training of CNNs within the popular deep learning framework Caffe. Barista provides versatile and rapid deployment of hardware and algorithms for FPGA-based CNN training while also serving as an infrastructure for further research and development in this field. By enabling researchers to prototype and deploy various hardware and algorithmic techniques easily, Barista opens up new possibilities for exploring power-efficient CNN training on FPGAs. Furthermore, it is currently the only tool available that offers comprehensive support for FPGA-based CNN training within Caffe. Thus, this work contributes to advancing the field of low-power DL by providing a much needed toolflow for FPGA based CNN training which allows efficient utilization of resources during model development - paving the way for improved performance and energy efficiency in DL applications.
