Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementation of DNN on FPGA #154

Open
anajar2198 opened this issue Feb 3, 2021 · 2 comments
Open

Implementation of DNN on FPGA #154

anajar2198 opened this issue Feb 3, 2021 · 2 comments

Comments

@anajar2198
Copy link

Hi
I have a trained DNN which weight is extracted on a .h5 file. What's the road map in order to implement this DNN on a FPGA?

@karanmathur
Copy link

Hi did you find how to go about implementing the DNN on an FPGA? If you did can you please share, it would be a great help.

@anajar2198
Copy link
Author

Hi did you find how to go about implementing the DNN on an FPGA? If you did can you please share, it would be a great help.

Hi
There are several ways to implement a DNN on FPGA

  1. Using OpenCL and providing kernels of layers and a host code. finally you can implement on trasic SOC boards
    for more information about this method you can refer to bellow link
    https://github.com/Er1cZ/Deploying_CNN_on_FPGA_using_OpenCL/blob/master/GettingStartedTutorial.md

  2. Using VitisAI and freezing your DNN, then Quantize it and then convert it to FPGA codes using VitisAI. the disadvantages of this method is that FPGAs that VitisAI supports are expensive. if you don't have money problem, you can consider this method too.

  3. the next solution is using board raspberry pi. you can use linux in there and install python packages such as tensorflow, pythorch, numpy and other requirements. Finally using connecting integrated camera you can design a real-time deep learning based engine.

  4. and the final solution that i know. using another board that supports linux. Using jetson nano and using a little graphic card that can be integrated to it. Using this tools and also TensorRT, you can deploy your DNN on jetson nano. TensorRT accelerates your DNN and converts your weights to FP32, FP16 and INT8.

these was the solutions that I found before. There are also other and maybe better solutions if you continue searching. I hope I could help you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants