Skip to content

Update Fat-Tree topology to have uniform routers throughout #18

Update Fat-Tree topology to have uniform routers throughout

Update Fat-Tree topology to have uniform routers throughout #18

Workflow file for this run

name: Regression
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
regress:
name: Regression / ${{ matrix.config }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
config:
- router_4x4
- router_8x8
- ring_4
- ring_8
- double_ring_4
- mesh_2x2
- mesh_4x4
- torus_2x2
- torus_4x4
- dtorus_2x2
- butterfly_k2_n2
- butterfly_k4_n2
- fat_tree_k2_n2
- fat_tree_k4_n2
- router_4x4_ser2
- router_4x4_clkcross2
- fully_connected_4x2
steps:
- name: Checkout Code
uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.x'
- name: Install Python Dependencies
run: |
python -m pip install --upgrade pip
pip install numpy
- name: Cache Verilator Build
id: cache-verilator
uses: actions/cache@v5
with:
path: /home/runner/verilator-bin
key: verilator-5.048-v2
- name: Install Build Prerequisites
run: |
sudo apt-get update
sudo apt-get install -y git help2man perl python3 make autoconf g++ flex bison ccache
sudo apt-get install -y libgoogle-perftools-dev libjemalloc-dev numactl perl-doc
sudo apt-get install -y libfl2 || true
sudo apt-get install -y libfl-dev || true
sudo apt-get install -y zlibc zlib1g zlib1g-dev liblz4 liblz4-dev || true
- name: Compile and Install Verilator v5.048
if: steps.cache-verilator.outputs.cache-hit != 'true'
run: |
unset VERILATOR_ROOT
git clone https://github.com/verilator/verilator
cd verilator
git checkout v5.048
autoconf
./configure --prefix=/home/runner/verilator-bin
make -j$(nproc)
make install
- name: Add Verilator to PATH
run: |
echo "/home/runner/verilator-bin/bin" >> $GITHUB_PATH
- name: Run Regression Suite
run: |
ARGS=$(make -C test --no-print-directory _regress_print_args_${{ matrix.config }})
make -C test verilator $ARGS PACKET_COUNT=65536 THREADS=4