LGMLJul 14, 2018

LeFlow: Enabling Flexible FPGA High-Level Synthesis of Tensorflow Deep Neural Networks

arXiv:1807.05317v152 citationsHas Code
Originality Incremental advance
AI Analysis

This addresses the time-consuming and expertise-limited process for FPGA deployment in machine learning, making it more accessible.

The paper tackles the manual translation bottleneck in FPGA acceleration of TensorFlow deep neural networks by presenting LeFlow, an open-source tool-flow that automatically maps TensorFlow models to synthesizable hardware using XLA and LLVM, enabling generation with very few lines of Python code.

Recent work has shown that Field-Programmable Gate Arrays (FPGAs) play an important role in the acceleration of Machine Learning applications. Initial specification of machine learning applications are often done using a high-level Python-oriented framework such as Tensorflow, followed by a manual translation to either C or RTL for synthesis using vendor tools. This manual translation step is time-consuming and requires expertise that limit the applicability of FPGAs in this important domain. In this paper, we present an open-source tool-flow that maps numerical computation models written in Tensorflow to synthesizable hardware. Unlike other tools, which are often constrained by a small number of inflexible templates, our flow uses Google's XLA compiler which emits LLVM code directly from a Tensorflow specification. This LLVM code can then be used with a high-level synthesis tool to automatically generate hardware. We show that our flow allows users to generate Deep Neural Networks with very few lines of Python code.

Code Implementations4 repos
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes