AIT - Accelerator Integration Tool
Project description
Accelerator Integration Tool (AIT)
The Accelerator Integration Tool (AIT) automatically integrates OmpSs@FPGA and OmpSs-2@FPGA accelerators into FPGA designs using different vendor backends.
This README should help you install the AIT component of the OmpSs@FPGA toolchain from the repository. However, it is preferred using the pre-built Docker image with the latest stable toolchain. They are available at OmpSs@FPGA pre-built Docker images and OmpSs-2@FPGA pre-built Docker images.
Moreover, there are pre-built SD images for the current supported board families: Zynq7000 and Ultrascale. They are also available at OmpSs@FPGA pre-built SD images and OmpSs-2@FPGA pre-built SD images.
Prerequisites
- Python 3.7 or later
- pip
- Vendor backends:
Git Large File Storage
This repository uses Git Large File Storage to handle relatively-large files that are frequently updated (i.e. hardware runtime IP files) to avoid increasing the history size unnecessarily. You must install it so Git is able to download these files.
Follow instructions on their website to install it.
Vendor backends
Xilinx Vivado
Follow installation instructions for Xilinx Vivado, Vitis HLS and SDK, as well as enable support during setupt for the devices you plan to use. However, components can be added or removed afterwards.
Current version supports Vivado 2021.1 onwards.
Installation
Using pip
You can use pip
to easily install ait
on your system:
python3 -m pip install ait-bsc
Manual installation
-
Make sure you have the following packages installed on your system
git-lfs
(Git Large File Storage)setuptools >= 61.0
(setuptools)
-
Clone AIT's repository
-
From GitHub:
git clone https://github.com/bsc-pm-ompss-at-fpga/ait.git
-
From our internal GitLab repository (BSC users only):
git clone https://pm.bsc.es/gitlab/ompss-at-fpga/ait.git
-
-
Enable Git LFS and install
cd ait git lfs install git lfs pull export AIT_HOME="/path/to/install/ait" export DEB_PYTHON_INSTALL_LAYOUT=deb_system python3 -m pip install . -t $AIT_HOME
-
Add the installed binaries to your PATH
export PATH=$AIT_HOME/bin:$PATH export PYTHONPATH=$AIT_HOME:$PYTHONPATH
Offline installation
-
Make sure you have the following packages installed on your system
wheel
(wheel)setuptools >= 61.0
(setuptools)
-
Copy AIT sources into target machine
-
Build wheel for AIT and install
cd ait python3 setup.py bdist_wheel export AIT_HOME="/path/to/install/ait" export DEB_PYTHON_INSTALL_LAYOUT=deb_system python3 -m pip install dist/ait_bsc-*.whl --no-index -t $AIT_HOME
-
Add the installed binaries to your PATH
export PATH=$AIT_HOME/bin:$PATH export PYTHONPATH=$AIT_HOME:$PYTHONPATH
Tests
Prerequisites
- python3-flake8
- python3-unittest
Style testing
The python code follows PEP 8 style guide which is verified using the flake8
tool.
To check the current source code just execute python3 -m flake8
.
Unit testing
The test
folder contains some unitary tests for python sources.
To run all tests the command python3 -m unittest
can be executed in the root directory of the repository.
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
File details
Details for the file ait_bsc-7.5.5.tar.gz
.
File metadata
- Download URL: ait_bsc-7.5.5.tar.gz
- Upload date:
- Size: 609.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3db223dd6f0b8c49fa23cf41db80c662aa0db99eedada3f9e819fdeea57f0661 |
|
MD5 | a3fb7104f8892c809a1fa0da90caf1ca |
|
BLAKE2b-256 | 1f5d524b76ad860cde7f8440d0e1dfaea1c075495475ea3ad8284ebfab3f7eb6 |
File details
Details for the file ait_bsc-7.5.5-py3-none-any.whl
.
File metadata
- Download URL: ait_bsc-7.5.5-py3-none-any.whl
- Upload date:
- Size: 661.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bffe15ceacb499fa976c7ea15fe0631cb55aa7e6105954003df69b7b0227df19 |
|
MD5 | 0083279f2585f67cb47e37e5a88f34b3 |
|
BLAKE2b-256 | 7a6f8e43d6178f7b43262e094e7ec84bde219d4a6273b1e4b3fd2d971b44eb67 |