Skip to content

Commit 880e05a

Browse files
committed
Exponentially decrease # of iters in benchmark
1 parent fbcc252 commit 880e05a

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

benches/benchmark.sh

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,31 @@
22

33
set -Eeuo pipefail
44

5-
if [[ "$#" -ne 3 ]]
5+
if [[ "$#" -ne 2 ]]
66
then
7-
echo "Usage: $0 <n-lower-bound> <n-upper-bound> <iters>"
8-
exit 1
7+
echo "Usage: $0 <n-lower-bound> <n-upper-bound>"
8+
exit 1
99
fi
1010

1111
start=$1
1212
end=$2
13-
iters=$3
13+
max_iters=1000 # Set your desired maximum number of iterations
1414

1515
OUTPUT_DIR=benchmark-data.$(date +"%Y.%m.%d.%H-%M-%S")
1616
mkdir -p "$OUTPUT_DIR"/fftw3 && mkdir "$OUTPUT_DIR"/rustfft && mkdir "$OUTPUT_DIR"/phastft
1717

18+
1819
benchmark_fftw3() {
1920
make clean && make
2021

2122
for n in $(seq "$start" "$end"); do
22-
echo "Running FFTW3 benchmark for N = 2^${n}..." && \
23+
# clamp to `max_iters`
24+
iters=$((2**($end - $n)))
25+
iters=$((iters > max_iters ? max_iters : iters))
26+
echo "Running FFTW3 benchmark for N = 2^${n} for ${iters} iterations..."
27+
2328
for _ in $(seq 1 "$iters"); do
24-
./bench_fftw "${n}" >> "${OUTPUT_DIR}"/fftw3/size_"${n}"
29+
./bench_fftw "${n}" >> "${OUTPUT_DIR}/fftw3/size_${n}"
2530
done
2631
done
2732
}
@@ -30,7 +35,10 @@ benchmark_phastft() {
3035
cargo clean && cargo build --release --examples
3136

3237
for n in $(seq "$start" "$end"); do
33-
echo "Running PhastFT benchmark for N = 2^${n}..." && \
38+
iters=$((2**($end - $n)))
39+
iters=$((iters > max_iters ? max_iters : iters))
40+
echo "Running PhastFT benchmark for N = 2^${n}..."
41+
3442
for _ in $(seq 1 "$iters"); do
3543
../target/release/examples/benchmark "${n}" >> "${OUTPUT_DIR}"/phastft/size_"${n}"
3644
done
@@ -41,7 +49,10 @@ benchmark_rustfft() {
4149
cargo clean && cargo build --release --examples
4250

4351
for n in $(seq "$start" "$end"); do
44-
echo "Running RustFFT benchmark for N = 2^${n}..." && \
52+
iters=$((2**($end - $n)))
53+
iters=$((iters > max_iters ? max_iters : iters))
54+
echo "Running RustFFT benchmark for N = 2^${n}..."
55+
4556
for _ in $(seq 1 "$iters"); do
4657
../target/release/examples/rustfft "${n}" >> "${OUTPUT_DIR}"/rustfft/size_"${n}"
4758
done

0 commit comments

Comments
 (0)