This repo implements the experiments in 2023 NeurIPS paper "SyncTREE: Fast Timing Analysis for Integrated Circuit Design through a Physics-informed Tree-based Graph Neural Network".
1.Install Anaconda.
Create conda env
conda env create -f environment.yml
2.Install pygraphviz.
1.Download Raw RC-tree json files.
Google Drive: https://drive.google.com/file/d/1TEux9yTVc2--zC-__4qbd2MJQJdSGzof/view?usp=drive_link
OR
pip install gdown
gdown 1TEux9yTVc2--zC-__4qbd2MJQJdSGzof
tar -zxvf rawdata.tar.gz
2.Download processed graph files.
Google Drive: https://drive.google.com/file/d/1S4g8cYjFqOTxjGYRjzYCJIor5_4Bvlss/view?usp=sharing
OR
pip install gdown
gdown 1S4g8cYjFqOTxjGYRjzYCJIor5_4Bvlss
tar -zxvf traindata.tar.gz
Replace anaconda_dir/envs/spice/lib/python3.9/site-packages/torch_geometric/nn/conv/gat_conv.py with gat_conv.py.
for example
cd GNN2SPICE
mv gat_conv.py /miniconda3/envs/spice/lib/python3.9/site-packages/torch_geometric/nn/conv/
Adjust hyper-parameters in parameters.yaml and specify in main.py
python main.py