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=0200000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b3a8761513b1f5b1c77c0a1da0e8ab83ad92aad8efa19933c6a473bd8701940a0736e18a5321b8ae3624fcfec9e9bb1efc04020c9c1968a5a6b8bf3f3a3ac6738d6395e75f884d277dca1eb9dfe28bcfbb90e282893569b22e71f915a98690e472dbf15ccb61d68d21311d37cd57fd8d84de30f07d0513fee27477abd147fe4ca30bc698c098cfe380696731c267ea671febc6aacfcdbdafe110188628921a1261e219a0db711533886949f7e24fe966f02cc4549db061305ef7bbeeedb141c099dc80dfae5c10f299d0810e144153f6a49f3a8b0c6f69f107b17f2e35e12533d21d57967faf6c9d7c7b4cd7c52f860d7701eb51998a39d4adb6b6119d0e69ea34e0d13aa6576f8597842ba1ec7b581ef57ba442ff5802d90157c14218d0981db05d639f305d894f6f87b2e469e95b5026b7bdf5e191ddc88e543e59c41f88e230e082c10e08a5afd3584839e9d28d84644c3ef7b9b6dd158605f1d3922ec889441bd2a510a0d1c0032e4d42232aa3d338aefc9f55b422c434a1418a4fd0b680cb00731b150c16525f6c8471f9035f575d31a1a261c7d254d81fedc2d656215fd6847b39d3ea8f53e5dce5939f3dfe39746c7ae7c7c9345c5562e790b7e89842b99a6b287dea2261e2428c0de24de12bcaca09255d55fdc2a22ca2386d740fc1adaa7de26efcf96c5fdf169a4ca4b825b66ec1daddbf70086e99f72e419a5823881a6c86cddb4802021065e9b962fc963a1b1781e754cd96fa78434d781cce276d95b22d8e329fbd00f6db50f89cb4302f4b77eb518ac09a1ee7e3fb558984ae5129617dbaf57ee2aef1ca105ec444460e6527e40a2702c7f09c8d82b848414f45fbf39ca634a552f264d5532d2f3fe809fbd19ddc851233faf43d0c8ef58901a78d452a0ad65ea06c54d55ab41fd9d0d49338fc8b5819484a133ae52c40b0be4c6aa62955b0bb2f10a8b5428c459d641625fd830530203139363139393339373139383233303338363132313336313330323034303439303431323831313839393934393430323736373330303337343231303830353636383033303137313734353738203139373539353835353738383331343733313533383332303135363530343937393630393330323136353235303536373739343530353738383034343737313935383337333237313235363737203020313732383739383238323631383433363030333637333638393735353934303231363737363530393236363630373830333337303538303931373835383330353438343336313231343030393820363835343736363334383934313938373433313338393636303738363131323931383836313636303030303131333131333039343331333438373639313434363931313333393237333732320a302031303431353330393635333731383530323337393432303934393638373634373531323835393739303033363638333032313938373433313832383631343238333338393739353538383234203236373733383130333131343837313734353630393533323337343535323835343530353539313738353034303836363936393335303833323739323031343932383235333934353434303220313837363138383036383332363934323231383231343533373739333335323031353330313137383239353133323837323535363336343334303634313533303631363230383730393237323820353938323532353735353938333335303338303238313635393033393736353837383731313530363331373337363330343132373936353539323437393430343939333436343433373632352030203930353532343936373335333932353239373237333437383033323735383138343636303638303738393235323935393534343234303237393738353839303334303132333337323232362031313533313835303136343233363338313034383435353430323432353633353634303834333834323836363636393438363633383537373036323530363336353033393534373436393138360a30203230333633333230353938303634393833383737323031373835333632383335333634343637383435353831313534353232333433333036333735363233303335353134303535333336353636203139383438363637323837303534393736343335323037373839333138373833323232333134393933343736353531313730393530333939383536383634323831333632373032373031343637203020313831363833343735303035353634313637393335353236383334393634353431393238363233353530363935323031393239323135363534313233363437313935333133363638363031303320323139313932303132313733313036333639353434323534333036383836333132333933313736333237313033393238333930393331353934323835383836343934303633303136383933340a3020383535353631333638373635303833393837313733373634313436323135393530363634383633323231353436313636343239343236373134393738343135393232383634393734383731392031313435353130313037353730343236363434343136373530313635303634303634363636353038333338373636343338343132353732363534323431393835383238363236343933303230330a3020313733363631393130343039343231353930333937383830383237303039313931363331353234343536373734383133373331373533353739323138333936343137333733303431373239383920333033363934353237343034343337383032313138333036323535343039353832313038323539363731303038333935333738313932373532303536333635323834343338383236303731360a
|
|
|
|
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"
|