Skip to content
This repository was archived by the owner on Mar 27, 2025. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,6 @@ url = https://github.com/celer-network/halo2
[submodule "halo2/KZG"]
path = halo2/KZG
url = https://github.com/celer-network/halo2
[submodule "barretenberg/barretenberg"]
path = barretenberg/barretenberg
url = git@github.com:AztecProtocol/barretenberg.git
30 changes: 30 additions & 0 deletions barretenberg/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
FROM alpine:3.18 AS builder
RUN apk update \
&& apk upgrade \
&& apk add --no-cache \
build-base \
clang16 \
openmp-dev \
cmake \
ninja \
git \
curl \
perl

WORKDIR /usr/src/barretenberg/cpp

COPY ./barretenberg/cpp .

RUN ls -al
# Build everything to ensure everything builds. All tests will be run from the result of this build.
RUN cmake --preset default && cmake --build --preset default --target celer_bench
RUN cd srs_db && ./download_ignition.sh 2

FROM alpine:3.18
RUN apk update && apk add curl openmp
COPY --from=builder /usr/src/barretenberg/cpp/srs_db /usr/src/barretenberg/cpp/srs_db
COPY --from=builder /usr/src/barretenberg/cpp/build/bin/*_bench /usr/src/barretenberg/cpp/build/bin/
WORKDIR /usr/src/barretenberg/cpp/build
COPY ./run_benchmarks.sh .
RUN chmod +x ./run_benchmarks.sh
CMD [ "./run_benchmarks.sh" ]
5 changes: 5 additions & 0 deletions barretenberg/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
To build and run benchmarks just run
```bash
./build_and_run.sh
```
in this directory.
1 change: 1 addition & 0 deletions barretenberg/barretenberg
Submodule barretenberg added at d4ade2
3 changes: 3 additions & 0 deletions barretenberg/build_and_run.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/bash
docker build . -t barretenberg-benchmarks
docker run -t barretenberg-benchmarks
23 changes: 23 additions & 0 deletions barretenberg/run_benchmarks.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/sh
echo "Benchmark for 1 chunk:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/1$ 2>/dev/null
echo "Benchmark for 2 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/2$ 2>/dev/null
echo "Benchmark for 4 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/4$ 2>/dev/null
echo "Benchmark for 8 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/8$ 2>/dev/null
echo "Benchmark for 16 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/16$ 2>/dev/null
echo "Benchmark for 32 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/32$ 2>/dev/null
echo "Benchmark for 64 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/64$ 2>/dev/null
echo "Benchmark for 128 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/128$ 2>/dev/null
echo "Benchmark for 256 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/256$ 2>/dev/null
echo "Benchmark for 512 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/512$ 2>/dev/null
echo "Benchmark for 1024 chunks:"
/usr/bin/time -o /dev/stdout -f "peak memory: %M, avg cpu: %P" ./bin/celer_bench --benchmark_filter=/1024$ 2>/dev/null