Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
This repository was archived by the owner on Nov 23, 2021. It is now read-only.
/ResNet50-PYNQPublic archive

Quantized ResNet50 Dataflow Acceleration on Alveo, with PYNQ

License

NotificationsYou must be signed in to change notification settings

Xilinx/ResNet50-PYNQ

Repository files navigation

Quantized ResNet50 Dataflow Acceleration on Alveo

This repository contains an implementations of a binary ResNet50FINN-style dataflow accelerator targeting Alveo boards.It is intended as a showcase of achievable throughput and latency for ImageNet clasiffication on FPGA, using dataflow execution and on-chip weight storage.

Repo organization

The repository is organized as follows:

  • src: contains source code and submodules
    • hls: HLS custom building blocks and submodules to FINN librares (FINN andFINN-HLSLib)
    • w1a2-v1.0: pre-build weights, thresholds, directives and configuration files for Binary ResNet50
  • compile: contains scripts for accelerator compilation (Vivado HLS CSynth + Vivado Synthesis)
  • link: contains scripts for accelerator linking into the Alveo platform with Vitis
  • host: python and Jupyter host code, using PYNQ for Alveo

Building the Accelerator

The Accelerator is built usingVitis 2019.2. We recommend using this version,otherwise changes might be required to source and/or Makefiles for things towork.

To build the accelerator, clone the repository (using--recursive to pull submodules), after which:

cd ResNet50-PYNQ/compilemake NET=w1a2_v1.0cd ../linkmake

See the specificCompile andLink documentation for further info.

Running the Demo

After you have built the accelerator, you caninstall the required files inthehost folder. Move in the cloned repo and domake install

cd ResNet50-PYNQmake install

You can then run the included Jupyter notebook or the Python multithreaded inference example. If youwant to use the distributed PYNQ python package, please read below.If you want to run example Python inference code, please see thehost code documentation.

PYNQ quick start

Install theresnet50-pynq package usingpip:

pip install resnet50-pynq

After the package is installed, to get your own copy of the available notebooksrun:

pynq get-notebooks ResNet50

You can then try things out by doing:

cd pynq-notebooksjupyter notebook

There are a number of additional options for thepynq get-notebooks command,you can list them by typing

pynq get-notebooks --help

You can also refer to the officialPYNQ documentation for more informationregarding thePYNQ Command Line Interface and in particular theget-notebooks command.

Supported Boards/Shells

Currently, we distribute the overlay only for the following Alveo boards andshells:

ShellBoard
xilinx_u250_xdma_201830_2Xilinx Alveo U250

Designs are built usingVitis 2019.2.

Author

Lucian Petrica @ Xilinx Research Labs.

About

Quantized ResNet50 Dataflow Acceleration on Alveo, with PYNQ

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp