;just: quickprof

This commit is contained in:
Simon Michael 2024-04-25 06:27:37 -10:00
parent 7920b0b9ac
commit ca03da5968

View File

@ -276,7 +276,7 @@ BUILDING:
# build hledger with profiling enabled at bin/hledgerprof # build hledger with profiling enabled at bin/hledgerprof
hledgerprof: hledgerprof:
@echo "building bin/hledgerprof..." @echo "building bin/hledgerprof..."
{{ STACK }} install --profile --local-bin-path=bin hledger {{ STACK }} install --profile --local-bin-path=bin hledger && mv bin/hledger{,prof}
@echo "to profile, use $STACK exec --profile -- hledger ..." @echo "to profile, use $STACK exec --profile -- hledger ..."
# # build "bin/hledgercov" for coverage reports (with ghc) # # build "bin/hledgercov" for coverage reports (with ghc)
@ -721,18 +721,19 @@ OS := `ghc -ignore-dot-ghci -package-env - -e 'import System.Info' -e 'putStrLn
# # ) # # )
# # tools/simplifyprof.hs doc/profs/latest.prof # # tools/simplifyprof.hs doc/profs/latest.prof
# run a hledger CMD against a sample journal and display the execution profile #{{ STACK }} exec --profile -- hledger +RTS {{ PROFRTSFLAGS }} -RTS -f examples/1000x1000x10.journal {{ CMD }} #>/dev/null
@quickprof CMD: hledgerprof #samplejournals # run a hledger CMD against a sample journal and display the execution profile (build hledgerprof first)
{{ STACK }} exec --profile -- hledger +RTS {{ PROFRTSFLAGS }} -RTS "$CMD" -f examples/1000x1000x10.journal >/dev/null quickprof CMD: #hledgerprof #samplejournals
profiterole hledger.prof hledgerprof +RTS {{ PROFRTSFLAGS }} -RTS -f examples/10ktxns-1kaccts.journal {{ CMD }} #>/dev/null
echo @profiterole hledger.prof
head -20 hledger.prof @echo
echo ... @head -20 hledger.prof
echo @echo ...
head -20 hledger.profiterole.txt @echo
echo ... @head -20 hledger.profiterole.txt
echo @echo ...
echo "See hledger.prof, hledger.profiterole.txt, hledger.profiterole.html for more." @echo
@echo "See hledger.prof, hledger.profiterole.txt, hledger.profiterole.html for more."
# generate and archive a graphical heap profile # generate and archive a graphical heap profile
@heap: hledgerprof #samplejournals @heap: hledgerprof #samplejournals