Giter Site home page Giter Site logo

hafizabc77 / finn Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xilinx/finn

0.0 0.0 0.0 71.26 MB

Dataflow compiler for QNN inference on FPGAs

Home Page: https://xilinx.github.io/finn

License: BSD 3-Clause "New" or "Revised" License

Shell 0.94% C++ 0.82% Python 79.61% Tcl 0.98% Verilog 4.84% SystemVerilog 3.44% Jupyter Notebook 9.37%

finn's Introduction

Fast, Scalable Quantized Neural Network Inference on FPGAs

drawing

GitHub Discussions ReadTheDocs

FINN is an experimental framework from Xilinx Research Labs to explore deep neural network inference on FPGAs. It specifically targets quantized neural networks, with emphasis on generating dataflow-style architectures customized for each network. The resulting FPGA accelerators are highly efficient and can yield high throughput and low latency. The framework is fully open-source in order to give a higher degree of flexibility, and is intended to enable neural network research spanning several layers of the software/hardware abstraction stack.

We have a separate repository finn-examples that houses pre-built examples for several neural networks. For more general information about FINN, please visit the project page and check out the publications.

Getting Started

Please see the Getting Started page for more information on requirements, installation, and how to run FINN in different modes. Due to the complex nature of the dependencies of the project, we only support Docker-based execution of the FINN compiler at this time.

What's New in FINN?

Documentation

You can view the documentation on readthedocs or build them locally using python setup.py doc from inside the Docker container. Additionally, there is a series of Jupyter notebook tutorials, which we recommend running from inside Docker for a better experience.

Community

We have GitHub discussions where you can ask questions. You can use the GitHub issue tracker to report bugs, but please don't file issues to ask questions as this is better handled in GitHub discussions.

We also heartily welcome contributions to the project, please check out the contribution guidelines and the list of open issues. Don't hesitate to get in touch over GitHub discussions to discuss your ideas.

In the past, we also had a Gitter channel. Please be aware that this is no longer maintained by us but can still be used to search for questions previous users had.

Citation

The current implementation of the framework is based on the following publications. Please consider citing them if you find FINN useful.

@article{blott2018finn,
  title={FINN-R: An end-to-end deep-learning framework for fast exploration of quantized neural networks},
  author={Blott, Michaela and Preu{\ss}er, Thomas B and Fraser, Nicholas J and Gambardella, Giulio and O’brien, Kenneth and Umuroglu, Yaman and Leeser, Miriam and Vissers, Kees},
  journal={ACM Transactions on Reconfigurable Technology and Systems (TRETS)},
  volume={11},
  number={3},
  pages={1--23},
  year={2018},
  publisher={ACM New York, NY, USA}
}

@inproceedings{finn,
author = {Umuroglu, Yaman and Fraser, Nicholas J. and Gambardella, Giulio and Blott, Michaela and Leong, Philip and Jahre, Magnus and Vissers, Kees},
title = {FINN: A Framework for Fast, Scalable Binarized Neural Network Inference},
booktitle = {Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays},
series = {FPGA '17},
year = {2017},
pages = {65--74},
publisher = {ACM}
}

Old version

We previously released an early-stage prototype of a toolflow that took in Caffe-HWGQ binarized network descriptions and produced dataflow architectures. You can find it in the v0.1 branch in this repository. Please be aware that this version is deprecated and unsupported, and the main branch does not share history with that branch so it should be treated as a separate repository for all purposes.

finn's People

Contributors

maltanar avatar auphelia avatar tobi-alonso avatar heborras avatar quetric avatar mmrahorovic avatar fpjentzsch avatar preusser avatar patrickgeel avatar fionnodonohoe-xlnx avatar jterry-x avatar hleblevec avatar volcacius avatar jmduarte avatar dependabot[bot] avatar jalezeta avatar mgehre-amd avatar giuseppe5 avatar neilkimn avatar alinavalinav avatar surangamh avatar umav1511 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.