Flexible Linear Algebra with Matrix-Empowered Synthesis (for Vitis HLS)
Developed by Wuqiong Zhao and other contributors, from LEADS, Southeast University.
If you find FLAMES useful, please cite our paper: Flexible High-Level Synthesis Library for Linear Transformations, early access, IEEE TCAS-II. [ IEEE Xplore ] [ PDF ] [ DOI ]
@article{flames_hls,
title = {Flexible High-Level Synthesis Library for Linear Transformations},
author = {Zhao, Wuqiong and Li, Changhan and Ji, Zhenhao and Guo, Zhichen and Chen, Xuanbo and You, You and Huang, Yongming and You, Xiaohu and Zhang, Chuan},
journal = {{IEEE} Transactions on Circuits and Systems {II}: Express Briefs},
year = {2024},
published = {IEEE},
note = {to be published}
}
Since FLAMES is a modern library written using C++14 (with some C++17 features), it only supports Vitis HLS 2020 or later where the GCC compiler version is 6.2.0. Notably, Vivado HLS is not supported.
FLAMES is a header-only library, so you can easily use it by first cloning it under you project root with
git clone https://github.com/autohdw/flames.git
You can include the required header
#include "flames/core.hpp"
All classes and functions are under the flames
namespace, so you can use
using namespace flames;
to access classes Mat
, etc. directly instead of flames::Mat
.
You can find more information about FLAMES in FLAMES_Insight.pdf
.
The FLAMES is open source and distributed by an Apache license (v2.0). Please cite our paper if you use FLAMES in your research.