codebench
codebench copied to clipboard
[TECS'23] A project on the co-design of Accelerators and CNNs.
CODEBench: A Neural Architecture and Hardware Accelerator Co-Design Framework
This repository contains the tool CODEBench which can be used to generate and evaluate different CNN-accelerator pairs. It runs the BOSHCODE algorithm to obtain the best-performing pair for the given constraints and the selected design space.
Table of Contents
-
Environment Setup
- Clone this repository
- Setup python environment
- Run hardware-software co-design
- Developer
- Cite this work
- License
Environment setup
Clone this repository
git clone https://github.com/jha-lab/codebench.git
cd codebench
Setup python environment
- PIP
virtualenv cnnbench
source cnnbench/bin/activate
pip install -r cnnbench/requirements.txt
- CONDA
conda env create -f cnnbench/environment.yaml
Run hardware-software co-design
cd boshcode
python run_boshcode.py
All training scripts use bash and have been implemented using SLURM. This will have to be setup before running the experiments.
Other flags can be used to control the training procedure (check using python run_boshcode.py --help
). This script uses the SLURM scheduler over mutiple compute nodes in a cluster (each cluster assumed to have 1 GPU, this can be changed in the script job_scripts/job_worker.sh
). SLURM can also be used in scenarios where distributed nodes are not available.
Developer
Shikhar Tuli. For any questions, comments or suggestions, please reach me at [email protected].
Cite this work
Cite our work using the following bitex entry:
@article{tuli2022codebench,
author = {Tuli, Shikhar and Li, Chia-Hao and Sharma, Ritvik and Jha, Niraj K.},
title = {{CODEBench}: A Neural Architecture and Hardware Accelerator Co-Design Framework},
year = {2022}, publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
issn = {1539-9087},
url = {https://doi.org/10.1145/3575798},
doi = {10.1145/3575798},
note = {Just Accepted},
journal = {ACM Trans. Embed. Comput. Syst.},
month = {dec}}
License
BSD-3-Clause. Copyright (c) 2022, Shikhar Tuli and Jha Lab. All rights reserved.
See License file for more details.