A Python wrapper for the Fletcher runtime library
Project description
Fletcher runtime library for Python
Fletcher is a framework for integrating FPGA accelerators with Apache Arrow that generates easy-to-use and efficient hardware interfaces allowing hardware addressing via table indices rather than byte addresses. Pyfletcher aims to make the Fletcher runtime library available in Python, allowing any Python programmer to easily interface with Fletcher enabled FPGA images. See the repository for using Fletcher to generate hardware.
Installing
The base pyfletcher library binary wheels can be easily installed on Linux:
pip install pyfletcher
In order to use pyfletcher to interface with FPGA's, please install the correct driver for your platform from the repository. It is recommended to install the echo platform for debugging and testing.
Building from source
Before installing pyfletcher, you should install Cython, numpy and pyarrow.
pip install Cython numpy pyarrow
Install the Fletcher C++ run-time library as follows:
mkdir build
cmake .. -DFLETCHER_PYTHON=ON -DPYARROW_DIR=<pyarrow_install_dir>
make
sudo make install
Here, <pyarrow_install_dir> should be the path to where pyarrow is installed on your system. This can easily be found by running the following code in Python:
import pyarrow as pa
print(pa.get_library_dirs())
You can now install pyfletcher.
python setup.py install
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 Distributions
Built Distributions
File details
Details for the file pyfletcher-0.0.20-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: pyfletcher-0.0.20-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 13.3 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e063024973c1cd5a8fdd4e225fb7f9e85d6d433fdba6ff43d3f1ef93f9cabbdd |
|
MD5 | c43eaef4c60eef87960ed7a1aad4c93e |
|
BLAKE2b-256 | 6e4e5b8c0a0ecbaac56c4787f2ff26501252dc3eb921db5887d2d3c7b02584eb |
File details
Details for the file pyfletcher-0.0.20-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: pyfletcher-0.0.20-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 13.3 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb7c3cd0aa3cb3a8b8faff446067ebf1f3b9c7e58365a734ea8a33391d1a1ed6 |
|
MD5 | 9dfdb7beab7da45299034e13a21c5c6f |
|
BLAKE2b-256 | df3ce1e04438de43d1ab77a2a4ae660ae24f4a25d35dc2f6b5e0bf9114ca9882 |
File details
Details for the file pyfletcher-0.0.20-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: pyfletcher-0.0.20-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 13.3 MB
- Tags: CPython 3.7m, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca58e97dd5231652e540863e128dc781f77134af331f0023abe39cbc9361f8a8 |
|
MD5 | 2279bca56f111735077e34888d08ba54 |
|
BLAKE2b-256 | becc1645b87531f18184aac9aeebfbb854ed470329e0bbe1c9324acd19db01b9 |
File details
Details for the file pyfletcher-0.0.20-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: pyfletcher-0.0.20-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 13.3 MB
- Tags: CPython 3.6m, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f562ae654b0dee5ccab4ff44ce6e7e98046864b4631525dd08dc527993255e62 |
|
MD5 | b82185e767c8fa63beb874ceb8381420 |
|
BLAKE2b-256 | 11056cfe1f941204b3464721719120adf7659d4c8aebdc4417ee83003d8244ad |