Machine learning in FPGAs using HLS
Project description
A package for machine learning inference in FPGAs. We create firmware implementations of machine learning algorithms using high level synthesis language (HLS). We translate traditional open-source machine learning package models into HLS that can be configured for your use-case!
Contact: hls4ml.help@gmail.com
Documentation & Tutorial
For more information visit the webpage: https://fastmachinelearning.org/hls4ml/
Detailed tutorials on how to use hls4ml's various functionalities can be found here.
Installation
pip install hls4ml
To install the extra dependencies for profiling:
pip install hls4ml[profiling]
Getting Started
Creating an HLS project
import hls4ml
#Fetch a keras model from our example repository
#This will download our example model to your working directory and return an example configuration file
config = hls4ml.utils.fetch_example_model('KERAS_3layer.json')
print(config) #You can print the configuration to see some default parameters
#Convert it to a hls project
hls_model = hls4ml.converters.keras_to_hls(config)
# Print full list of example models if you want to explore more
hls4ml.utils.fetch_example_list()
Building a project with Xilinx Vitis (after downloading and installing from here)
#Use Vivado HLS to synthesize the model
#This might take several minutes
hls_model.build()
#Print out the report if you want
hls4ml.report.read_vivado_report('my-hls-test')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hls4ml-0.5.0b0.tar.gz.
File metadata
- Download URL: hls4ml-0.5.0b0.tar.gz
- Upload date:
- Size: 247.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.6.0.post20210108 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9274b55ba055542c83ad95dad71bc0c4c372a8d2b74f08fca1707fd5082b7479
|
|
| MD5 |
a39a0d775d6be57884bb22c863eb8b76
|
|
| BLAKE2b-256 |
29f5c3ee8135950055548a441cee5627b63e652ad64c6a01c5c4c1b5652d2900
|
File details
Details for the file hls4ml-0.5.0b0-py3-none-any.whl.
File metadata
- Download URL: hls4ml-0.5.0b0-py3-none-any.whl
- Upload date:
- Size: 253.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.6.0.post20210108 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b259f36192705a30e1e9919f07e9d8b214d603985a1e9f7daec4ac2d5976dea
|
|
| MD5 |
b83c2d3b4b6953b654f7d2d911de0e54
|
|
| BLAKE2b-256 |
4dded70c4990fb6361f21d6239299b2534a54441fc6260ab7a78e12204cbe670
|