tools: update benchmarking scripts

This commit is contained in:
Simon Michael 2010-05-22 21:24:07 +00:00
parent 43f6218b97
commit af7e8f327d
2 changed files with 26 additions and 20 deletions

View File

@ -15,9 +15,9 @@ PROFCMD=-f 1000x1000x10.ledger balance
COVCMD=test COVCMD=test
# executables to run during "make simplebench". They should be on the path # executables to run during "make simplebench". They should be on the path
# or in the current directory. hledger executables should generally be the # or in the current directory. hledger executables for benchmarking should
# standard cabal builds, also constrained to parsec 2 for now. # generally be the standard optimised cabal build, constrained to parsec 2.
BENCHEXES=hledger-0.7 hledger-0.8 ledger-3pre BENCHEXES=hledger-0.8 hledger ledger-3pre
# misc. tools # misc. tools
RST2PDF=rst2pdf RST2PDF=rst2pdf
@ -204,10 +204,16 @@ fullcabaltest: setversion
&& cabal upload dist/hledger-$(VERSION).tar.gz --check -v3 \ && cabal upload dist/hledger-$(VERSION).tar.gz --check -v3 \
&& echo $@ passed) || echo $@ FAILED && echo $@ passed) || echo $@ FAILED
# run performance benchmarks without saving results.
# Requires some commands defined in bench.tests and some BENCHEXES defined above.
quickbench: sampleledgers bench.tests tools/simplebench
tools/simplebench -fbench.tests $(BENCHEXES)
@rm -f benchresults.*
# run performance benchmarks and save textual results in profs/. # run performance benchmarks and save textual results in profs/.
# Requires some commands defined in bench.tests and some BENCHEXES defined above. # Requires some commands defined in bench.tests and some BENCHEXES defined above.
simplebench bench: sampleledgers bench.tests tools/simplebench simplebench: sampleledgers bench.tests tools/simplebench
PATH=.:$(PATH) tools/bench -fbench.tests $(BENCHEXES) | tee profs/$(TIME).bench tools/simplebench -fbench.tests $(BENCHEXES) | tee profs/$(TIME).bench
@rm -f benchresults.* @rm -f benchresults.*
@(cd profs; rm -f latest.bench; ln -s $(TIME).bench latest.bench) @(cd profs; rm -f latest.bench; ln -s $(TIME).bench latest.bench)

View File

@ -1,22 +1,22 @@
# tests for "make benchmark" # tests for "make benchmark"
# one command per line, without the executable # one command per line, without the executable
#-f 100x100x10.ledger balance #-f data/100x100x10.ledger balance
#-f 100x100x10.ledger register #-f data/100x100x10.ledger register
#-f 100x100x10.ledger print #-f data/100x100x10.ledger print
-f 1000x1000x10.ledger balance -f data/1000x1000x10.ledger balance
-f 1000x1000x10.ledger register -f data/1000x1000x10.ledger register
-f 1000x1000x10.ledger print -f data/1000x1000x10.ledger print
#-f 10000x1000x10.ledger balance #-f data/10000x1000x10.ledger balance
#-f 10000x1000x10.ledger register #-f data/10000x1000x10.ledger register
#-f 10000x1000x10.ledger print #-f data/10000x1000x10.ledger print
#-f 10000x1000x10.ledger balance aa #-f data/10000x1000x10.ledger balance aa
#-f 10000x1000x10.ledger register aa #-f data/10000x1000x10.ledger register aa
#-f 10000x1000x10.ledger print aa #-f data/10000x1000x10.ledger print aa
#-f 100000x1000x10.ledger balance #-f data/100000x1000x10.ledger balance
#-f 100000x1000x10.ledger register #-f data/100000x1000x10.ledger register
#-f 100000x1000x10.ledger print #-f data/100000x1000x10.ledger print