104 lines
6.8 KiB
Bash
Executable File
104 lines
6.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
DATADIR=./benchmark-datadir
|
|
|
|
function zcash_rpc {
|
|
./src/zcash-cli -rpcwait -rpcuser=user -rpcpassword=password -rpcport=5983 "$@"
|
|
}
|
|
|
|
function zcashd_start {
|
|
rm -rf "$DATADIR"
|
|
mkdir -p "$DATADIR"
|
|
./src/zcashd -regtest -datadir="$DATADIR" -rpcuser=user -rpcpassword=password -rpcport=5983 &
|
|
ZCASHD_PID=$!
|
|
}
|
|
|
|
function zcashd_stop {
|
|
zcash_rpc stop > /dev/null
|
|
wait $ZCASH_PID
|
|
}
|
|
|
|
function zcashd_massif_start {
|
|
rm -rf "$DATADIR"
|
|
mkdir -p "$DATADIR"
|
|
rm -f massif.out
|
|
valgrind --tool=massif --time-unit=ms --massif-out-file=massif.out ./src/zcashd -regtest -datadir="$DATADIR" -rpcuser=user -rpcpassword=password -rpcport=5983 &
|
|
ZCASHD_PID=$!
|
|
}
|
|
|
|
function zcashd_massif_stop {
|
|
zcash_rpc stop > /dev/null
|
|
wait $ZCASHD_PID
|
|
ms_print massif.out
|
|
}
|
|
|
|
RAWTXWITHPOUR=020000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024c7ec193fc98ef10d3cf232d795dd44a8f2c8ab94fd25d136ccc86d118d412ff17838c9497c3d388ec07fbdc99a37c2854a3b6b87b1b4d68bfa7c35bab45aeaf1e34486be8d6b2e0d98a063c277001914ef50dddee4e2215ee58eb3416ffdfdead5ddb03804822868b676fb87d56a34c24b6f7facc476fa3acba6bfe81f7d7dda6be52f7ce9c7e863a1d9177907521f4cf3012b5534edeeb391c92207269a08c3bea8ebc33ab251a6a0ae8407fc1a7ab6e8be36e04dfa8f143a58963133c775f04b154ef7b41107d73d6f2a8fc3cab14ffc44376b712ec7714b4e121dd418f51ed8c6a599ac50ff3e696781bec94ac11d8065f915a0abd6656439f4a7fbc55ff0efcae1403a9d9001504cd167ca97c4ecf9d8f8904ab4d310ac84084c62f04a100423dd933be1c7b33d13bbe22f93aaccb0f79854a739fc1ce38bd13e0a6b6ad3eddac4d457eeb6dff47bc4ebc04428437a9e7e2dd71ac1f631b619c30361f7045aefe8cac34d9bd1f47e8f598cea7b4fe212d81cfcdd69f29e543e846cba4c1a6bae736e85b76f33d3431cbca19bd2243ccac6c30434d564f8920fc597bec7d202d95d010a920df18df9c3e8e15950d105809c7e5d57eb780875df5cc22f9aece88561c03a3da4d70cceef7ade85ed071ebc5e0ca3e166d6d82dfcf79bdef0ac0c02b9b716ea10d9d5daa4af992660c7128191d5487edc9a0951ee3c65a14baa1974db470e783d91e5114e4579608a1bdcce715050650231a952890cce01226f5d6f2c8b1d8868ee51deeaecef0da4f291df1e4e6d2a1e7fc9c00bef293f458f9e4391b396c03e453522f3188d8d0cf12f1d7f69780563ff449592c9b0249ffe6f8ae9f2167acf5094a6fa08f07f5bb36fbe0a94139a090305488923ba108213916f8d3b9de21586b952938b5a2563c3055fc3804581abc9dad45fb3721ea000f835dd7560bf686b057736710106113006fd88053020313436373432373635323732303533373131313331313437363032353839383932363036333330313738353230313030303933373539373534333233363030363530363833303136323538363720313732373130363635383738303430393731313235353835363637383734363934373030393830323731303036313532353732303437393539333437313236373330323734353136393337353720302032303831383832343535373436343637313436323832373235363234393531303135393935343736383438363836383638393133323136373337393239343737353032353533373639383932302031343537363435373732313933313534383536333934303732333434343431313731363130393935313436303035343138323939383036333039313735373039313230353237333636373634350a3020313837333133313335393838363137383534313838333832313234303539363438333132373935313637323436313734363133353930323235383536323436353938323037373136363739353120373731303539343839353436353331343133353635323631363637383731333832363139323534333033353333303230343038353532353435373936343330323238383038353936333035372033393238323630343737373833363032333631383533393033303532383933393434343639383238313430343235303637373630303232393931303339383538323436313031323932393832203231353835373031383531313237343139373433383336383538353733393333323238313230343538343437393833343735393537393736363530373433343731343330383036373331343039203020323037303431373036353339393033313034353239313333393435343035353132383737363534363335303837333334343636343630373930383534343139333334353738343337363538363220343938303931373435383431353030373738343035323137393136333836303031373634313737303433313530343538333637323939373935313736313430383037323933333935363334320a3020313734373431323532313139313134303139323333373338363330373430313233333634363136353539373831333735393639383135313532353934383634383235383036393930363437343620313430393930383734353239353830393935373937393830333038363439313232303132343230393138353332353735393632333832303933383438363636373435373237343739303439383820302031313535303936313835373236323531303431343530393633383238313537363737393233303838383231303632343931363433323032353035393039313630363737333538303236383430392031333537363330343835343433323031353937373136363735343430333233313033393830313734363739333035393630363933393635303931393436353038373130363732303132393531340a302032313737383334373037373231393833313033323139383636353536353838393039313934303138303939393537363830333435383838353232383735373336343231343538343436353731362031333531363133333832303232393737353734363930393130393832383932313435303238313134333539343930383433343137373135363635353135313736303536313437373131383638340a3020313939343535383534323238373237313134353535393633303332353932373130313136323337343831333731333931323838383538343530383933343236333238383039363231333337343020393631333030303238303530383434343630373235353637353935333130393431323539313435343637393338393838333533353434313635313239353434383034363238323939363934350a
|
|
|
|
case "$1" in
|
|
time)
|
|
zcashd_start
|
|
case "$2" in
|
|
sleep)
|
|
zcash_rpc zcbenchmark sleep 10
|
|
;;
|
|
parameterloading)
|
|
zcash_rpc zcbenchmark parameterloading 10
|
|
;;
|
|
createjoinsplit)
|
|
zcash_rpc zcbenchmark createjoinsplit 10
|
|
;;
|
|
verifyjoinsplit)
|
|
zcash_rpc zcbenchmark verifyjoinsplit 1000 "$RAWTXWITHPOUR"
|
|
;;
|
|
solveequihash)
|
|
zcash_rpc zcbenchmark solveequihash 10
|
|
;;
|
|
verifyequihash)
|
|
zcash_rpc zcbenchmark verifyequihash 1000
|
|
;;
|
|
*)
|
|
zcashd_stop
|
|
echo "Bad arguments."
|
|
exit 1
|
|
esac
|
|
zcashd_stop
|
|
;;
|
|
memory)
|
|
zcashd_massif_start
|
|
case "$2" in
|
|
sleep)
|
|
zcash_rpc zcbenchmark sleep 1
|
|
;;
|
|
parameterloading)
|
|
zcash_rpc zcbenchmark parameterloading 1
|
|
;;
|
|
createjoinsplit)
|
|
zcash_rpc zcbenchmark createjoinsplit 1
|
|
;;
|
|
verifyjoinsplit)
|
|
zcash_rpc zcbenchmark verifyjoinsplit 1 "$RAWTXWITHPOUR"
|
|
;;
|
|
solveequihash)
|
|
zcash_rpc zcbenchmark solveequihash 1
|
|
;;
|
|
verifyequihash)
|
|
zcash_rpc zcbenchmark verifyequihash 1
|
|
;;
|
|
*)
|
|
zcashd_massif_stop
|
|
echo "Bad arguments."
|
|
exit 1
|
|
esac
|
|
zcashd_massif_stop
|
|
rm -f massif.out
|
|
;;
|
|
*)
|
|
echo "Bad arguments."
|
|
exit 1
|
|
esac
|
|
|
|
# Cleanup
|
|
rm -rf "$DATADIR"
|