======================================================== ________________ ___ ________ / ____/ ____/ __ \/ | / ____/ /___ _ __ / / / / __/ /_/ / /| |______/ /_ / / __ \ | /| / / / /___/ /_/ / _, _/ ___ /_____/ __/ / / /_/ / |/ |/ / \____/\____/_/ |_/_/ |_| /_/ /_/\____/|__/|__/ ========================================================
CGRA-Flow is an integrated framework for CGRA compilation, exploration, synthesis, and development.
A demo at repl.it (https://repl.it/@ChengTan/cgra-flow) shows some features of CGRA-Flow (the verilog generation and evaluation are not available due to repl.it's limited support of python environment). To explore all the features, please setup CGRA-Flow locally or leverage the docker image.
The docker image is available here.
Recommended machine configuration
- CPU: >= 6 cores
- Memory: 25~30G
2x2 tiles run time: clk_period (ps) frequency (Hz) time (hour) 1000 1G ~40 10,000 100M ~7 100,000 10M ~7
As CGRA-Flow requires GUI, a script is provided for setting up the display:
docker pull cgra/cgra-flow:20241028
# For Mac users:
sh ./run_mac_docker.sh
# Windows Docker customtkinter style UI (Please setup GUI (X-11) first)
# In WSL, execute below script, it will enter container and config x11 DISPLAY automatically
sh ./run_windows_docker.sh
# Don't forget to activate the python virtual environment once you are in the container:
source /WORK_REPO/venv/bin/activate
Otherwise, if you don't need the GUI, development can be performed in the container with the environment well set up:
docker pull cgra/cgra-flow:20241028
docker run -it cgra/cgra-flow:20241028
source /WORK_REPO/venv/bin/activate
# Startup theme mode selector UI
python launch.py
CGRA-Flow requires Python3.7.
Refer to the build scripts or look into specific repo for the manual installation if you don't want to use docker.
@inproceedings{tan2020opencgra,
title={OpenCGRA: An open-source unified framework for modeling, testing, and evaluating CGRAs},
author={Tan, Cheng and Xie, Chenhao and Li, Ang and Barker, Kevin J and Tumeo, Antonino},
booktitle={2020 IEEE 38th International Conference on Computer Design (ICCD)},
pages={381--388},
year={2020},
organization={IEEE}
}
CGRA-Flow is offered under the terms of the Open Source Initiative BSD 3-Clause License. More information about this license can be found here: