2017-11-29 18:41:53 +03:00
|
|
|
# Some standard commands to benchmark. "quickbench" runs these by default.
|
|
|
|
# There is another set of benchmarks in the hledger package: hledger/bench/bench.hs
|
|
|
|
# Here is a quick benchmarking guide. Note these are quick measurements which
|
|
|
|
# can be affected by system activity. Usually this isn't a problem. The last
|
|
|
|
# (criterion) is more robust.
|
|
|
|
#
|
2021-06-16 04:19:38 +03:00
|
|
|
# Generate the test journals:
|
|
|
|
# make samplejournals
|
|
|
|
#
|
|
|
|
# Get quickbench:
|
|
|
|
# git clone https://github.com/simonmichael/quickbench
|
|
|
|
# cd quickbench
|
|
|
|
# stack install # must be run in source dir
|
|
|
|
#
|
2017-11-29 18:41:53 +03:00
|
|
|
# Measure performance:
|
2021-06-16 04:19:38 +03:00
|
|
|
# time ./bench.sh # show if these work, what they do, total time (GNU time also shows max memory)
|
2017-11-29 18:41:53 +03:00
|
|
|
# quickbench [OPTS] # time each command, one or more times
|
|
|
|
# make bench # time each command with several hledger versions (BENCHEXES in Makefile)
|
|
|
|
# stack bench hledger # time a different set of benchmarks (bench/bench.hs)
|
|
|
|
# stack bench hledger --ba --criterion # time more carefully, using criterion
|
|
|
|
|
2021-06-16 04:19:38 +03:00
|
|
|
# commands to benchmark:
|
|
|
|
|
2020-10-29 09:39:18 +03:00
|
|
|
# hledger -f examples/100x100x10.journal print
|
|
|
|
# hledger -f examples/1000x1000x10.journal print
|
2017-11-29 18:41:53 +03:00
|
|
|
hledger -f examples/10000x1000x10.journal print
|
2020-10-29 09:39:18 +03:00
|
|
|
# hledger -f examples/10000x1000x10.journal print ff
|
2017-12-06 01:38:55 +03:00
|
|
|
#hledger -f examples/100000x1000x10.journal print
|
|
|
|
#hledger -f examples/100000x1000x10.journal print ff
|
2017-11-29 18:41:53 +03:00
|
|
|
|
2020-10-29 09:39:18 +03:00
|
|
|
# hledger -f examples/100x100x10.journal register
|
|
|
|
# hledger -f examples/1000x1000x10.journal register
|
2017-11-29 18:41:53 +03:00
|
|
|
hledger -f examples/10000x1000x10.journal register
|
2020-10-29 09:39:18 +03:00
|
|
|
# hledger -f examples/10000x1000x10.journal register ff
|
2017-12-06 01:38:55 +03:00
|
|
|
#hledger -f examples/100000x1000x10.journal register
|
|
|
|
#hledger -f examples/100000x1000x10.journal register ff
|
2017-11-29 18:41:53 +03:00
|
|
|
|
2020-10-29 09:39:18 +03:00
|
|
|
# hledger -f examples/100x100x10.journal balance
|
|
|
|
# hledger -f examples/1000x1000x10.journal balance
|
2017-11-29 18:41:53 +03:00
|
|
|
hledger -f examples/10000x1000x10.journal balance
|
2020-10-29 09:39:18 +03:00
|
|
|
# hledger -f examples/10000x1000x10.journal balance ff
|
2017-12-06 01:38:55 +03:00
|
|
|
#hledger -f examples/100000x1000x10.journal balance
|
|
|
|
#hledger -f examples/100000x1000x10.journal balance ff
|
2024-01-25 10:59:58 +03:00
|
|
|
#hledger -f examples/1000x1000x10.journal balance --weekly
|
|
|
|
#hledger -f examples/10000x1000x10.journal balance --weekly
|
2017-11-29 18:41:53 +03:00
|
|
|
|