From a6784c00bc60f77c53b72d5fd6c6c0ccc3db8cd4 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=A9mie=20Astor?= Date: Sun, 19 Jan 2020 20:17:05 +0100 Subject: [PATCH] bench on demand --- .github/workflows/build.yml | 7 +++++++ benchmark/results/binary-trees.dat | 3 --- benchmark/results/binary-trees.png | Bin 11571 -> 0 bytes benchmark/results/fib-recurs.dat | 3 --- benchmark/results/fib-recurs.png | Bin 9812 -> 0 bytes benchmark/results/fib.dat | 3 --- benchmark/results/fib.png | Bin 9070 -> 0 bytes benchmark/results/for.dat | 3 --- benchmark/results/for.png | Bin 11599 -> 0 bytes benchmark/results/method-call.dat | 3 --- benchmark/results/method-call.png | Bin 10798 -> 0 bytes benchmark/results/string-equals.dat | 2 -- benchmark/results/string-equals.png | Bin 9101 -> 0 bytes scripts/benchmark.sh | 1 + 14 files changed, 8 insertions(+), 17 deletions(-) delete mode 100644 benchmark/results/binary-trees.dat delete mode 100644 benchmark/results/binary-trees.png delete mode 100644 benchmark/results/fib-recurs.dat delete mode 100644 benchmark/results/fib-recurs.png delete mode 100644 benchmark/results/fib.dat delete mode 100644 benchmark/results/fib.png delete mode 100644 benchmark/results/for.dat delete mode 100644 benchmark/results/for.png delete mode 100644 benchmark/results/method-call.dat delete mode 100644 benchmark/results/method-call.png delete mode 100644 benchmark/results/string-equals.dat delete mode 100644 benchmark/results/string-equals.png diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e4744ca5..2ead3480 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,6 +19,12 @@ jobs: path: mdr key: ${{ runner.os }}-mdr + - uses: actions/cache@v1 + id: results + with: + path: benchmark/results + key: ${{ runner.os }}-results + - name: Mdr if: steps.mdr-bin.outputs.cache-hit != 'true' run: | @@ -96,6 +102,7 @@ jobs: - name: Benchmark run: | + git log -1 --pretty="%B" | grep "\[benchmark\]" || exit 0 echo 1 | sudo tee /proc/sys/kernel/perf_event_paranoid sudo apt-get update sudo apt-get install gnuplot lua5.3 diff --git a/benchmark/results/binary-trees.dat b/benchmark/results/binary-trees.dat deleted file mode 100644 index 7bc415bc..00000000 --- a/benchmark/results/binary-trees.dat +++ /dev/null @@ -1,3 +0,0 @@ -gwion 0.28883 0.71 -wren 0.212555 0.05 -lua 0.33127 1.31 diff --git a/benchmark/results/binary-trees.png b/benchmark/results/binary-trees.png deleted file mode 100644 index b3a657544e434e908585ff9975078c37039b5eaa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11571 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 diff --git a/benchmark/results/fib-recurs.dat b/benchmark/results/fib-recurs.dat deleted file mode 100644 index 2821ba5c..00000000 --- a/benchmark/results/fib-recurs.dat +++ /dev/null @@ -1,3 +0,0 @@ -gwion 5.61139 0.08 -wren 13.8135 0.19 -lua 7.45629 0.06 diff --git a/benchmark/results/fib-recurs.png b/benchmark/results/fib-recurs.png deleted file mode 100644 index 43179c7ff781414b5eccf02b5b8b92e4313c313d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9812 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 GyZ-_ov9Kio diff --git a/benchmark/results/for.dat b/benchmark/results/for.dat deleted file mode 100644 index 6bbcec2a..00000000 --- a/benchmark/results/for.dat +++ /dev/null @@ -1,3 +0,0 @@ -gwion 0.04015 5.88 -wren 0.08465 2.07 -lua 0.052868 0.20 diff --git a/benchmark/results/for.png b/benchmark/results/for.png deleted file mode 100644 index f097191b6716b7b412b4e8a0a269d397801d4610..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11599 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 diff --git a/benchmark/results/string-equals.dat b/benchmark/results/string-equals.dat deleted file mode 100644 index 019dadd5..00000000 --- a/benchmark/results/string-equals.dat +++ /dev/null @@ -1,2 +0,0 @@ -gwion 0.17701 2.96 -wren 0.184586 0.11 diff --git a/benchmark/results/string-equals.png b/benchmark/results/string-equals.png deleted file mode 100644 index f5f5724ff32cf358208f8e3fb8f0dc78a2f37608..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9101 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