Skip to content

Manual Workflow

Manual Workflow #92

name: Manual Workflow
on:
workflow_dispatch:
jobs:
manual-job:
runs-on: [self-hosted, benchmarks, icicle ]
env:
TEST_SECRET: ${{ secrets.MY_TEST_SECRET }}
INGO_BENCHMARKS_DB_PASS: ${{ secrets.INGO_BENCHMARKS_DB_PASS }}
steps:
# I need only the Dockerfile to build the image
- name: Checkout zk-benchmarks repository
uses: actions/checkout@v4
- name: Build Docker image
run: |
docker rm zk-benchmarks || true
docker rmi zk-benchmarks-image || true
# docker system prune -a --force --volumes
docker build -t zk-benchmarks-image .
- name: Run Rust benchmarks inside a Docker container
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
#run: docker run --rm -e DATABASE_URL="${DATABASE_URL}" --gpus all --name zk-benchmarks -w /app/zk-benchmarks zk-benchmarks-image:latest /bin/bash -c "cd /app/zk-benchmarks/benchmarks/rust/msm && cargo bench"
# run: docker run --rm -e BENCHMARK_REPO=/app/icicle -e DATABASE_URL="${DATABASE_URL}" --gpus all --name zk-benchmarks -w /app/zk-benchmarks zk-benchmarks-image:latest /bin/bash -c "cd /app/zk-benchmarks/zkbench && cargo run"
# TODO: update icicle repo
run: docker run --rm -e BENCHMARK_REPO=/app/icicle -e DATABASE_URL="${DATABASE_URL}" --gpus all --name zk-benchmarks -w /app/zk-benchmarks zk-benchmarks-image:latest /bin/bash -c "cd /app/zk-benchmarks && git pull && git rev-parse --abbrev-ref HEAD && git rev-parse --short HEAD; cd /app/zk-benchmarks/zkbench && cargo run --quiet"
# - name: Benchmark Rust MSM operation
# run: |
# pwd
# ls -la
# #cargo criterion --message-format=json > ./criterion.json
# docker images
# #docker run --gpus all zk-benchmarks-image:latest
# - name: Benchmark add operation
# run: |
# cd ./benchmarks/add
# ./compile.sh
# ./run.sh
# cat ./benchmark.sql
# - name: Benchmark multiply operation
# run: |
# cd ./benchmarks/multiply
# ./compile.sh
# ./run.sh
# cat ./benchmark.sql
# - name: Benchmark MSM operation
# run: |
# cd ./benchmarks/msm
# ./compile.sh
# ./run.sh
# cat ./benchmark.sql
# - name: Benchmark NTT operation
# run: |
# cd ./benchmarks/ntt
# ./compile.sh
# ./run.sh
# cat ./benchmark.sql