English

f-CNN$^{\text{x}}$: A Toolflow for Mapping Multi-CNN Applications on FPGAs

Computer Vision and Pattern Recognition 2021-06-09 v2 Artificial Intelligence Hardware Architecture

Abstract

The predictive power of Convolutional Neural Networks (CNNs) has been an integral factor for emerging latency-sensitive applications, such as autonomous drones and vehicles. Such systems employ multiple CNNs, each one trained for a particular task. The efficient mapping of multiple CNNs on a single FPGA device is a challenging task as the allocation of compute resources and external memory bandwidth needs to be optimised at design time. This paper proposes f-CNNx^{\text{x}}, an automated toolflow for the optimised mapping of multiple CNNs on FPGAs, comprising a novel multi-CNN hardware architecture together with an automated design space exploration method that considers the user-specified performance requirements for each model to allocate compute resources and generate a synthesisable accelerator. Moreover, f-CNNx^{\text{x}} employs a novel scheduling algorithm that alleviates the limitations of the memory bandwidth contention between CNNs and sustains the high utilisation of the architecture. Experimental evaluation shows that f-CNNx^{\text{x}}'s designs outperform contention-unaware FPGA mappings by up to 50% and deliver up to 6.8x higher performance-per-Watt over highly optimised GPU designs for multi-CNN systems.

Keywords

Cite

@article{arxiv.1805.10174,
  title  = {f-CNN$^{\text{x}}$: A Toolflow for Mapping Multi-CNN Applications on FPGAs},
  author = {Stylianos I. Venieris and Christos-Savvas Bouganis},
  journal= {arXiv preprint arXiv:1805.10174},
  year   = {2021}
}

Comments

Accepted at the 28th International Conference on Field Programmable Logic & Applications (FPL) 2018

R2 v1 2026-06-23T02:08:27.581Z