neo icon indicating copy to clipboard operation
neo copied to clipboard

Improve native contract benchmarking harness

Open Jim8y opened this issue 5 months ago • 1 comments

Summary

  • add native contract benchmarking harness and manual runner with seeded chain context
  • expose CLI/env filters + helper script for quick runs
  • emit text/JSON/HTML reports with mean/median/p95 and highlight large profile variance

Testing

  • scripts/run-native-benchmarks.sh --job quick

Jim8y avatar Nov 07 '25 12:11 Jim8y

Native Contract Benchmarks

Native Contract Benchmarks

Generated at 2025-11-07 11:51:43Z. Iterations: 20, Warmup: 3, Trim: 10%.

ContractManagement

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
deployTiny131.044128.400161.5009.586118.700222.900OK
deployTiny100.91288.900894.00037.94182.6003,814.400OK
deploySmall124.644123.150154.2005.502114.900175.400OK
deploySmall89.99487.550128.0007.73680.000131.900OK
deployMedium172.925170.200296.80030.054126.900320.100OK
deployMedium87.17586.150123.7004.21679.900126.500OK
deployLarge128.238125.800148.8006.046122.100208.300OK
deployLarge83.92583.050104.9003.24079.000111.300OK
destroyTiny51.90651.00067.3002.81735.200108.500OK
destroySmall50.88750.45066.8001.55249.10069.800OK
destroyMedium50.31950.15052.1000.57649.40056.300OK
destroyLarge51.04450.65087.0001.58849.30087.100OK
getContractTiny8.1638.3008.5000.2477.6008.500OK
getContractSmall8.1508.2009.2000.2767.6009.300OK
getContractMedium8.1388.2008.9000.3007.60017.100OK
getContractLarge8.1508.2008.4000.2097.7008.500OK
getContractByIdTiny8.3138.4008.8000.2347.7009.100OK
getContractByIdSmall8.1388.2508.5000.2627.6008.500OK
getContractByIdMedium8.1138.2008.6000.2677.60016.800OK
getContractByIdLarge8.1698.3008.5000.2477.7008.500OK
getContractHashesTiny11.82511.50030.0000.84310.50037.600OK
getContractHashesSmall11.38111.45011.9000.28310.80011.900OK
getContractHashesMedium11.19411.25011.6000.26110.60011.600OK
getContractHashesLarge11.20011.20011.8000.26010.70019.400OK
getMinimumDeploymentFeeTiny11.50011.60011.9000.25210.90012.100OK
getMinimumDeploymentFeeSmall11.44411.50011.7000.20610.90011.700OK
getMinimumDeploymentFeeMedium11.42511.45011.8000.23011.10011.800OK
getMinimumDeploymentFeeLarge12.27511.85021.6001.40411.00034.600OK
hasMethodTiny11.57511.60011.9000.20811.10012.000OK
hasMethodSmall11.68811.75012.1000.20611.10022.300OK
hasMethodMedium12.06912.10012.5000.11611.80012.800OK
hasMethodLarge12.81912.90013.2000.27212.30013.400OK
isContractTiny11.20611.30011.9000.30510.50019.800OK
isContractSmall11.66211.65016.0000.42110.50036.600OK
isContractMedium11.33811.40011.7000.26710.70011.800OK
isContractLarge11.26211.35012.1000.23910.70013.100OK
setMinimumDeploymentFeeTiny43.45042.05061.1003.90140.90097.000OK
setMinimumDeploymentFeeSmall42.10042.00043.7000.37941.20050.200OK
setMinimumDeploymentFeeMedium42.97542.05062.5003.10041.10065.400OK
setMinimumDeploymentFeeLarge42.41342.40043.9000.40141.40052.500OK
updateTiny94.38190.600143.50012.39483.600279.000OK
updateTiny88.01983.600131.10011.77481.300134.500OK
updateSmall111.18189.950251.50039.13486.3003,230.700OK
updateSmall111.706114.550171.20026.26180.800298.100OK
updateMedium88.65086.200136.8006.77082.900221.700OK
updateMedium118.556116.000136.5004.812113.300158.000OK
updateLarge87.95084.050138.20011.84281.600365.100OK
updateLarge132.737134.100161.4009.491112.700163.100OK

CryptoLib

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
bls12381AddTiny46.79446.65048.5000.51545.30056.500OK
bls12381AddSmall48.78148.35057.0002.02245.70063.300OK
bls12381AddMedium48.58748.60049.6000.56347.10058.000OK
bls12381AddLarge47.05046.90054.5001.08545.90065.500OK
bls12381DeserializeTiny5,959.4635,909.5506,619.500150.2735,710.2009,419.700OK
bls12381DeserializeSmall16,815.62516,770.75018,127.400561.25216,004.50018,185.900OK
bls12381DeserializeMedium40.46338.70055.4003.13738.100439.000OK
bls12381DeserializeLarge41.06940.05062.8003.15638.20063.100OK
bls12381EqualTiny0.5690.5001.0000.1860.4003.500OK
bls12381EqualSmall0.4250.4000.9000.0750.4000.900OK
bls12381EqualMedium0.4060.4000.5000.0240.4001.100OK
bls12381EqualLarge0.4060.4000.5000.0240.4001.000OK
bls12381MulTiny87,137.73887,032.75088,024.700362.41485,821.70088,631.900OK
bls12381MulSmall88,413.26988,397.10089,591.900635.38586,747.70090,067.700OK
bls12381MulMedium88,704.25688,688.70089,670.500536.35887,152.90089,938.300OK
bls12381MulLarge87,800.21987,544.85089,919.400770.56586,943.50089,994.500OK
bls12381PairingTiny67,081.36966,641.85068,827.800811.91566,058.40068,924.600OK
bls12381PairingSmall66,693.51266,450.15068,064.800471.97466,034.10068,888.500OK
bls12381PairingMedium66,415.50666,386.05067,215.500280.98765,954.70067,396.800OK
bls12381PairingLarge66,253.49466,120.85066,846.900268.16665,872.20067,193.700OK
bls12381SerializeTiny3.0943.1004.4000.0753.0005.400OK
bls12381SerializeSmall3.1003.1004.5000.0793.0004.900OK
bls12381SerializeMedium3.0503.0503.2000.0503.0003.200OK
bls12381SerializeLarge3.0693.0503.3000.0773.00017.700OK
keccak256Tiny2.0382.0003.2000.2061.9004.300OK
keccak256Small4.7504.7005.9000.1464.6006.100OK
keccak256Medium33.09426.70075.30010.55124.400222.600OK
keccak256Large46.12545.70052.5001.10043.20052.500OK
murmur32Tiny0.3560.2001.6000.3770.2002.600OK
murmur32Small1.4501.4502.0000.0501.3004.500OK
murmur32Medium7.7197.7008.2000.1947.4008.400OK
murmur32Large12.88112.95013.7000.30512.40015.000OK
recoverSecp256K1Tiny1.4311.4001.9000.0581.3002.500OK
recoverSecp256K1Small2.7632.6503.6000.2852.40028.200OK
recoverSecp256K1Medium7.4387.6007.8000.3226.9007.900OK
recoverSecp256K1Large8.9198.9009.1000.0538.8009.300OK
ripemd160Tiny0.8690.8001.4000.0850.8002.300OK
ripemd160Small3.3753.3003.9000.2113.2009.000OK
ripemd160Medium17.65017.65018.2000.30417.00025.000OK
ripemd160Large30.55030.50031.5000.25529.90031.900OK
sha256Tiny0.3440.3000.4000.0500.3000.400OK
sha256Small0.8380.8001.6000.0600.8003.400OK
sha256Medium3.4443.3004.0000.2523.2004.000OK
sha256Large5.0625.0009.2000.4204.40019.000OK
verifyWithECDsaTiny169.263167.300181.1003.697165.200196.200OK
verifyWithECDsaTiny168.550167.100177.2003.344164.900212.800OK
verifyWithECDsaSmall168.619167.700175.0002.902164.000175.300OK
verifyWithECDsaSmall167.250166.600174.9001.670164.700177.500OK
verifyWithECDsaMedium41.28741.05047.4001.37140.00050.300OK
verifyWithECDsaMedium40.70640.45043.4000.57940.10044.000OK
verifyWithECDsaLarge40.45640.35041.1000.24740.10043.800OK
verifyWithECDsaLarge40.40640.30041.3000.28440.00045.900OK
verifyWithEd25519Tiny0.3440.3000.4000.0500.3001.700OK
verifyWithEd25519Small2.2502.2002.8000.1462.1002.900OK
verifyWithEd25519Medium10.51910.60010.8000.1949.90010.800OK
verifyWithEd25519Large12.94413.00013.5000.30612.50019.900OK

GasToken

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
balanceOfTiny10.0879.95012.7000.4859.10013.700OK
balanceOfSmall10.93110.55013.5000.9379.80033.400OK
balanceOfMedium9.6509.70010.4000.2749.10019.800OK
balanceOfLarge9.6699.70012.5000.2999.00029.700OK
decimalsTiny0.0000.0000.0000.0000.0000.000OK
decimalsSmall0.0000.0000.0000.0000.0001.000OK
decimalsMedium0.0000.0000.0000.0000.0000.000OK
decimalsLarge0.0000.0000.0000.0000.0000.300OK
symbolTiny0.0000.0000.0000.0000.0000.000OK
symbolSmall0.0000.0000.0000.0000.0000.000OK
symbolMedium0.0000.0000.0000.0000.0000.000OK
symbolLarge0.0000.0000.0000.0000.0000.000OK
totalSupplyTiny10.08110.10010.9000.3139.40012.300OK
totalSupplySmall9.99410.00011.8000.3389.40020.400OK
totalSupplyMedium9.8009.90010.1000.2429.20010.100OK
totalSupplyLarge9.7509.90010.6000.2269.20011.200OK
transferTiny16.91916.70026.5001.36515.20028.500OK
transferSmall16.95016.80019.9000.69616.00050.800OK
transferMedium18.71218.80020.2000.59717.50025.000OK
transferLarge18.65018.70020.8000.25717.60051.100OK

LedgerContract

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
currentHashTiny10.30610.35011.1000.3259.50011.300OK
currentHashSmall10.35010.40011.2000.1809.70021.600OK
currentHashMedium10.11310.20010.3000.2399.60010.300OK
currentHashLarge10.16910.30010.4000.2269.50010.500OK
currentIndexTiny11.30010.65034.3001.6289.700675.300OK
currentIndexSmall10.18810.20010.6000.2299.60010.600OK
currentIndexMedium10.23810.30010.6000.2809.50016.600OK
currentIndexLarge10.24410.30011.5000.2839.60011.700OK
getBlockTiny17.40017.20020.5000.66016.10053.800OK
getBlockSmall16.87516.85019.6000.28216.20026.200OK
getBlockMedium16.52516.60017.2000.28215.80017.700OK
getBlockLarge16.53116.55017.1000.40615.80017.100OK
getTransactionTiny14.83114.70016.4000.43713.90016.800OK
getTransactionSmall14.68814.55026.5000.42714.20082.900OK
getTransactionMedium14.40014.40014.8000.26513.90015.000OK
getTransactionLarge14.27514.15014.9000.27013.90014.900OK
getTransactionFromBlockTiny18.90018.85020.4000.30818.00021.600OK
getTransactionFromBlockSmall18.62518.60020.2000.13518.10022.300OK
getTransactionFromBlockMedium18.60018.60023.0000.26217.70051.300OK
getTransactionFromBlockLarge18.55618.55019.8000.42017.60020.000OK
getTransactionHeightTiny14.63814.55015.0000.28914.10016.600OK
getTransactionHeightSmall14.40614.30014.9000.27314.00015.200OK
getTransactionHeightMedium14.53114.35016.0000.37514.00021.900OK
getTransactionHeightLarge14.53814.45016.2000.31413.90045.700OK
getTransactionSignersTiny14.91314.85016.1000.40614.10016.200OK
getTransactionSignersSmall14.49414.50015.0000.29513.90015.000OK
getTransactionSignersMedium14.33114.25014.7000.22014.00015.000OK
getTransactionSignersLarge14.65614.55016.0000.50714.00019.300OK
getTransactionVMStateTiny14.88114.90024.4000.42914.10040.100OK
getTransactionVMStateSmall14.62514.55015.2000.31714.00015.400OK
getTransactionVMStateMedium14.53814.45015.6000.30013.90024.100OK
getTransactionVMStateLarge14.40014.25015.0000.31613.80015.300OK

NeoToken

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
balanceOfTiny10.71910.70011.7000.3239.90020.800OK
balanceOfSmall9.8009.80010.9000.3899.10011.000OK
balanceOfMedium9.7949.80010.9000.3779.00031.000OK
balanceOfLarge9.5449.6509.9000.2609.00012.400OK
decimalsTiny0.0000.0000.0000.0000.0000.000OK
decimalsSmall0.0000.0000.0000.0000.0000.300OK
decimalsMedium0.0000.0000.0000.0000.0000.000OK
decimalsLarge0.0000.0000.0000.0000.0000.000OK
getAccountStateTiny10.77510.70012.0000.28610.10020.700OK
getAccountStateSmall9.4509.5509.7000.2248.9009.900OK
getAccountStateMedium9.6889.70011.6000.4369.00036.500OK
getAccountStateLarge9.5069.6009.8000.2499.0009.800OK
getAllCandidatesTiny9.8139.80010.5000.2459.20011.000OK
getAllCandidatesSmall9.6319.70010.2000.2789.00013.500OK
getAllCandidatesMedium9.7449.8009.9000.1779.10010.000OK
getAllCandidatesLarge9.6889.70010.9000.3289.10011.000OK
getCandidateVoteTiny9.7139.75010.3000.2879.00020.400OK
getCandidateVoteSmall9.6509.70010.1000.2749.10011.300OK
getCandidateVoteMedium9.8009.70015.8000.5179.10029.500OK
getCandidateVoteLarge9.6389.70010.1000.2919.00010.100OK
getCandidatesTiny40.22539.10061.0002.89421.80094.800OK
getCandidatesSmall38.63138.40043.3000.71637.60078.900OK
getCandidatesMedium38.40038.30039.5000.39237.70042.200OK
getCandidatesLarge38.63138.60039.7000.27821.60042.200OK
getCommitteeTiny22.73722.50024.7000.58721.80025.500OK
getCommitteeSmall23.01322.05031.4002.51621.50038.100OK
getCommitteeMedium21.97521.90024.1000.45621.30024.700OK
getCommitteeLarge21.61321.50022.3000.19021.30022.500OK
getCommitteeAddressTiny27.45027.20030.0000.54225.90040.700OK
getCommitteeAddressSmall26.83126.85036.4000.26226.40050.900OK
getCommitteeAddressMedium26.63126.65027.3000.23126.10033.900OK
getCommitteeAddressLarge26.76226.70029.1000.40325.90032.000OK
getGasPerBlockTiny39.40639.35041.8000.37324.10048.400OK
getGasPerBlockSmall39.13839.15043.2000.37721.70047.800OK
getGasPerBlockMedium41.00639.05055.5004.48238.40086.100OK
getGasPerBlockLarge38.82538.75039.5000.21122.40043.800OK
getNextBlockValidatorsTiny28.50628.40034.2001.08325.80065.700OK
getNextBlockValidatorsSmall26.69426.60028.0000.37025.80030.600OK
getNextBlockValidatorsMedium26.20026.15027.1000.23725.80032.300OK
getNextBlockValidatorsLarge26.65626.50043.5000.76925.80044.600OK
getRegisterPriceTiny9.7449.80010.3000.2299.20010.300OK
getRegisterPriceSmall9.8069.90010.8000.3279.10011.100OK
getRegisterPriceMedium9.6819.80010.0000.2639.10010.200OK
getRegisterPriceLarge9.8009.85010.3000.2159.20023.100OK
onNEP17PaymentTiny22.33122.20024.6000.73421.50027.300OK
onNEP17PaymentSmall23.11921.95042.5003.81321.400405.300OK
onNEP17PaymentMedium21.83721.85022.5000.28321.30031.000OK
onNEP17PaymentLarge21.66921.60022.5000.33521.00023.400OK
registerCandidateTiny20.94420.90032.9000.34320.20046.900OK
registerCandidateTiny20.21920.20022.4000.17019.60052.500OK
registerCandidateSmall20.58720.50021.5000.28020.00029.500OK
registerCandidateSmall20.28120.20021.3000.25519.90026.600OK
registerCandidateMedium20.33820.35020.9000.13219.60021.000OK
registerCandidateMedium20.13720.20020.4000.13619.50020.400OK
registerCandidateLarge20.30620.20021.6000.36819.70025.800OK
registerCandidateLarge20.22520.20021.1000.24919.30024.400OK
setGasPerBlockTiny34.61934.50037.3000.70033.50044.200OK
setGasPerBlockSmall34.60634.20043.2001.32333.30069.000OK
setGasPerBlockMedium34.04433.80042.7001.52132.50058.500OK
setGasPerBlockLarge33.46333.60035.0000.43132.40035.000OK
setRegisterPriceTiny33.64433.50036.3000.72232.40071.200OK
setRegisterPriceSmall33.05033.10033.4000.20932.40035.700OK
setRegisterPriceMedium33.81233.40048.2001.59332.30055.800OK
setRegisterPriceLarge33.08133.00033.8000.38332.20039.800OK
symbolTiny0.0000.0000.0000.0000.0000.000OK
symbolSmall0.0000.0000.0000.0000.0000.000OK
symbolMedium0.0000.0000.0000.0000.0000.000OK
symbolLarge0.0000.0000.0000.0000.0000.000OK
totalSupplyTiny9.5009.60010.0000.2558.90010.300OK
totalSupplySmall9.4259.45010.3000.3018.90019.600OK
totalSupplyMedium9.4699.5509.7000.2399.00010.000OK
totalSupplyLarge9.4449.5509.8000.2159.00010.200OK
transferTiny17.02517.00019.3000.43916.10027.900OK
transferSmall15.93116.00016.6000.32015.40016.800OK
transferMedium18.47518.50020.6000.38817.60024.100OK
transferLarge18.70018.75019.1000.32217.80019.700OK
unclaimedGasTiny40.96940.80042.2000.38040.30050.600OK
unclaimedGasSmall41.54440.75052.8002.33739.90063.800OK
unclaimedGasMedium40.56940.60041.3000.41239.80044.200OK
unclaimedGasLarge41.11940.65054.1001.71840.20054.700OK
unregisterCandidateTiny17.11917.10017.9000.37116.50018.000OK
unregisterCandidateTiny16.85016.95017.6000.40016.10017.600OK
unregisterCandidateSmall17.23117.25018.8000.31016.50028.000OK
unregisterCandidateSmall16.63716.60017.2000.28916.00017.200OK
unregisterCandidateMedium16.96317.00018.5000.33516.30050.100OK
unregisterCandidateMedium16.69416.80017.9000.32116.10018.600OK
unregisterCandidateLarge16.78116.55023.3001.30215.80045.900OK
unregisterCandidateLarge16.38716.55024.7000.35515.70034.800OK
voteTiny16.91316.90017.8000.32416.00020.400OK
voteTiny16.85016.90018.7000.19016.20022.700OK
voteSmall15.48815.50017.0000.32014.90026.000OK
voteSmall15.23115.30015.8000.26914.80016.100OK
voteMedium15.38115.45016.5000.39214.60017.200OK
voteMedium15.26315.35015.6000.22614.70020.100OK
voteLarge15.37515.30016.4000.38514.60018.100OK
voteLarge15.20015.05016.0000.30814.60016.500OK

Notary

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
balanceOfTiny10.45010.40010.8000.1709.90010.800OK
balanceOfSmall10.37510.40012.4000.2149.60019.600OK
balanceOfMedium10.25010.30010.5000.1979.70010.500OK
balanceOfLarge10.23710.30010.7000.2349.60010.800OK
expirationOfTiny10.38710.45010.8000.2189.80021.100OK
expirationOfSmall10.34410.40010.7000.1849.70010.700OK
expirationOfMedium10.31210.35010.6000.2159.80010.600OK
expirationOfLarge10.62510.50012.4000.4329.80033.200OK
getMaxNotValidBeforeDeltaTiny9.7639.80010.9000.2269.20019.400OK
getMaxNotValidBeforeDeltaSmall9.7069.80010.0000.2449.20010.200OK
getMaxNotValidBeforeDeltaMedium9.6819.75010.1000.2589.10012.000OK
getMaxNotValidBeforeDeltaLarge9.6509.75010.0000.2729.10010.700OK
lockDepositUntilTiny20.57519.95028.4001.45818.600333.500OK
lockDepositUntilSmall19.30019.30020.4000.28118.60026.100OK
lockDepositUntilMedium25.22520.10090.20014.88218.400100.600OK
lockDepositUntilLarge19.60619.40022.0000.74518.80051.200OK
onNEP17PaymentTiny18.74418.60020.3000.44417.90030.000OK
onNEP17PaymentSmall19.89419.90027.0000.47217.90049.000OK
onNEP17PaymentMedium18.31218.40018.7000.20917.30027.700OK
onNEP17PaymentLarge18.21918.30019.5000.27217.50019.500OK
setMaxNotValidBeforeDeltaTiny48.23753.30098.40010.11934.400120.800OK
setMaxNotValidBeforeDeltaSmall34.34434.30042.1000.39433.40082.500OK
setMaxNotValidBeforeDeltaMedium35.02534.50046.4001.33533.80056.000OK
setMaxNotValidBeforeDeltaLarge34.26334.30034.8000.32233.40036.000OK
verifyTiny173.763174.000198.3006.192164.300206.800OK
verifySmall169.613167.250178.3004.142164.400203.000OK
verifyMedium169.188167.750190.0004.449148.900200.000OK
verifyLarge168.694167.600182.6003.300163.800206.500OK
withdrawTiny34.69434.00040.2001.57533.40061.700OK
withdrawSmall34.00033.20055.5001.72732.30076.200OK
withdrawMedium32.69432.65033.5000.26831.90034.200OK
withdrawLarge32.76932.80049.5000.30431.90059.700OK

OracleContract

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
finishTiny30.05028.75082.4002.33727.900142.300OK
finishSmall35.65030.400107.50012.25927.400188.600OK
finishMedium31.69429.50051.3005.17428.200157.600OK
finishLarge28.31328.10046.3000.81427.30087.100OK
getPriceTiny10.32510.35011.1000.3199.60011.400OK
getPriceSmall10.10610.20010.9000.2959.50011.300OK
getPriceMedium10.08110.15010.6000.2139.50010.600OK
getPriceLarge10.26310.10018.1001.1249.30023.200OK
requestTiny27.16926.70041.4001.32225.40072.400OK
requestSmall30.93828.60071.6005.90025.900260.300OK
requestMedium25.85626.00026.4000.30224.90026.700OK
requestLarge25.88725.85040.5000.30625.20054.100OK
setPriceTiny34.15633.80046.0001.13632.10071.700OK
setPriceSmall33.58133.45044.2000.71832.30063.900OK
setPriceMedium33.47533.25041.3000.79632.10069.700OK
setPriceLarge32.98132.95034.0000.41032.20041.400OK
verifyTiny14.97514.85015.9000.37514.300254.300OK
verifySmall14.89414.60026.6000.91614.00037.500OK
verifyMedium14.16314.05014.6000.23713.80014.700OK
verifyLarge14.58814.40025.6000.68513.700419.100OK

PolicyContract

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
blockAccountTiny34.84433.75061.7002.42632.80076.000OK
blockAccountSmall33.70033.50039.2001.01232.40097.500OK
blockAccountMedium33.20633.25035.8000.56732.10067.600OK
blockAccountLarge33.24433.20034.2000.33232.70035.800OK
getAttributeFeeTiny9.7699.80010.2000.2549.10010.300OK
getAttributeFeeTiny9.7139.80010.2000.2559.10010.400OK
getAttributeFeeSmall9.7879.80010.4000.2879.20013.300OK
getAttributeFeeSmall9.7069.80010.5000.2519.10010.700OK
getAttributeFeeMedium10.01910.05011.8000.4779.200185.500OK
getAttributeFeeMedium9.8509.80018.2000.6219.10026.000OK
getAttributeFeeLarge9.9069.80017.7000.8879.10020.100OK
getAttributeFeeLarge9.5889.7009.8000.2159.10010.000OK
getBlockedAccountsTiny9.5819.60010.3000.3349.00010.700OK
getBlockedAccountsSmall9.3949.5009.8000.2418.9009.800OK
getBlockedAccountsMedium9.7449.65017.9000.6749.00030.300OK
getBlockedAccountsLarge9.4629.5009.7000.2238.9009.800OK
getExecFeeFactorTiny9.6389.75010.3000.2559.10011.300OK
getExecFeeFactorSmall9.5699.7009.9000.2179.20010.000OK
getExecFeeFactorMedium9.8889.85021.9000.6099.10027.200OK
getExecFeeFactorLarge9.6129.7009.9000.2749.10011.000OK
getFeePerByteTiny9.7389.80010.4000.2269.10011.000OK
getFeePerByteSmall9.6259.7009.9000.2449.00010.000OK
getFeePerByteMedium9.7569.80010.1000.2659.20011.300OK
getFeePerByteLarge9.6449.7009.9000.2009.10010.000OK
getMaxTraceableBlocksTiny9.6629.70010.0000.2399.20010.300OK
getMaxTraceableBlocksSmall9.6629.70017.4000.2769.10026.100OK
getMaxTraceableBlocksMedium9.5569.7009.9000.2879.00010.000OK
getMaxTraceableBlocksLarge9.5009.6009.8000.2269.0009.900OK
getMaxValidUntilBlockIncrementTiny9.6129.6509.9000.2399.00010.000OK
getMaxValidUntilBlockIncrementSmall10.1819.70016.9001.4799.10023.100OK
getMaxValidUntilBlockIncrementMedium9.6069.7009.9000.2199.1009.900OK
getMaxValidUntilBlockIncrementLarge9.5319.6009.8000.1939.1009.900OK
getMillisecondsPerBlockTiny9.5819.70010.0000.2489.10010.100OK
getMillisecondsPerBlockSmall9.9759.75017.0000.5549.10026.700OK
getMillisecondsPerBlockMedium9.7139.80010.1000.2329.20010.100OK
getMillisecondsPerBlockLarge9.6759.7509.9000.1899.1009.900OK
getStoragePriceTiny9.7509.80010.3000.2429.20010.600OK
getStoragePriceSmall10.0889.80016.8001.1889.10028.700OK
getStoragePriceMedium9.5629.65010.0000.2399.00010.000OK
getStoragePriceLarge9.5759.6009.9000.2519.00010.400OK
isBlockedTiny9.5629.65010.0000.2399.10010.100OK
isBlockedSmall9.9449.75016.4000.6229.00025.500OK
isBlockedMedium9.5319.6009.8000.2058.9009.800OK
isBlockedLarge9.4509.5009.8000.2299.0009.800OK
setAttributeFeeTiny36.53136.25043.8002.57233.30045.400OK
setAttributeFeeTiny39.76935.700102.40012.09833.600159.700OK
setAttributeFeeSmall34.05633.90036.4000.69833.00073.400OK
setAttributeFeeSmall34.88134.25042.5001.64332.90064.400OK
setAttributeFeeMedium34.95034.90037.0000.64733.60051.500OK
setAttributeFeeMedium33.11233.20033.8000.27832.40034.700OK
setAttributeFeeLarge35.34435.25037.4000.93133.50046.400OK
setAttributeFeeLarge33.74433.20049.9001.58632.10053.500OK
setExecFeeFactorTiny33.47533.40035.8000.49632.20036.100OK
setExecFeeFactorSmall34.12533.50050.2002.22332.20055.100OK
setExecFeeFactorMedium32.95032.95034.5000.49532.00037.400OK
setExecFeeFactorLarge32.89433.00033.5000.34431.80041.700OK
setFeePerByteTiny34.39434.40047.0001.57532.00049.500OK
setFeePerByteSmall32.90633.00034.6000.36832.10038.300OK
setFeePerByteMedium33.03732.95037.4000.56632.10069.100OK
setFeePerByteLarge33.95033.30084.1001.48032.3005,616.400OK
setMaxTraceableBlocksTiny33.76933.50035.5000.74732.50044.900OK
setMaxTraceableBlocksSmall33.36333.45034.2000.35932.30040.100OK
setMaxTraceableBlocksMedium33.78133.15036.7001.23532.50038.800OK
setMaxTraceableBlocksLarge32.90632.85035.4000.28832.30038.700OK
setMaxValidUntilBlockIncrementTiny33.71933.35043.4000.93132.40045.900OK
setMaxValidUntilBlockIncrementSmall33.36933.30035.5000.55332.30039.000OK
setMaxValidUntilBlockIncrementMedium33.26233.05035.5000.59432.30069.600OK
setMaxValidUntilBlockIncrementLarge33.01932.95033.9000.39132.10038.800OK
setMillisecondsPerBlockTiny34.30034.05045.8000.74333.00060.900OK
setMillisecondsPerBlockSmall33.45633.35035.1000.31033.00039.900OK
setMillisecondsPerBlockMedium33.36333.30034.5000.36632.50037.800OK
setMillisecondsPerBlockLarge60.06254.550118.40013.45233.900182.200OK
setStoragePriceTiny34.36934.00040.5001.25932.90068.400OK
setStoragePriceSmall33.01333.10033.6000.27832.20033.700OK
setStoragePriceMedium32.94433.00033.7000.25032.20043.600OK
setStoragePriceLarge33.70033.25051.4001.59632.10051.700OK
unblockAccountTiny33.84433.80034.8000.49432.30044.200OK
unblockAccountSmall34.01333.30040.8001.82832.40066.000OK
unblockAccountMedium33.03133.05033.9000.29731.80034.100OK
unblockAccountLarge33.46233.40048.2000.46132.30064.500OK

RoleManagement

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
designateAsRoleTiny45.62536.900162.70016.29334.300196.200OK
designateAsRoleSmall39.51236.000101.20010.46534.300104.200OK
designateAsRoleMedium36.97536.80045.7001.66835.60063.000OK
designateAsRoleLarge36.64436.10055.1002.14935.10055.400OK
getDesignatedByRoleTiny37.51937.15041.6000.96821.30047.600OK
getDesignatedByRoleSmall37.31237.10044.1000.57620.70045.400OK
getDesignatedByRoleMedium37.30637.00048.5001.37836.30057.300OK
getDesignatedByRoleLarge37.94437.90042.4000.33521.20042.400OK

StdLib

MethodProfileMean (µs)Median (µs)P95 (µs)StdDev (µs)Min (µs)Max (µs)Status
atoiTiny0.8690.6002.5000.4910.5004.000OK
atoiTiny0.9881.0001.1000.0480.9002.000OK
atoiSmall0.8690.8002.1000.1930.8005.900OK
atoiSmall1.3001.3001.4000.0001.3002.100OK
atoiMedium0.9000.9000.9000.0000.9001.600OK
atoiMedium1.4001.4001.6000.1001.3002.100OK
atoiLarge0.9000.9000.9000.0000.9001.400OK
atoiLarge1.5251.5001.6000.0431.4002.200OK
base58CheckDecodeTiny6.6066.5507.3000.2016.0008.400OK
base58CheckDecodeSmall94.37593.050109.7002.54291.800695.000OK
base58CheckDecodeMedium4,343.1444,322.8004,602.00071.3194,191.8006,139.100OK
base58CheckDecodeLarge19,045.85019,865.35025,485.1001,391.68316,396.50025,916.500OK
base58CheckEncodeTiny6.6006.5008.3000.4826.00011.700OK
base58CheckEncodeSmall134.381134.500139.7002.691129.900147.100OK
base58CheckEncodeMedium4,023.4503,969.4504,343.700104.3573,930.7004,348.200OK
base58CheckEncodeLarge13,846.93813,940.55014,645.200612.38312,917.70015,077.400OK
base58DecodeTiny4.1124.0504.8000.3313.3005.800OK
base58DecodeSmall78.43877.95084.4001.24376.90097.300OK
base58DecodeMedium4,136.2874,110.5004,329.80075.6794,005.1004,367.000OK
base58DecodeLarge15,935.61215,904.80017,101.800162.46215,590.90018,521.100OK
base58EncodeTiny1.3061.2001.8000.1751.2003.800OK
base58EncodeSmall46.83846.40050.5001.28145.40064.900OK
base58EncodeMedium3,200.1193,178.1503,343.10048.1983,119.4003,415.500OK
base58EncodeLarge13,117.86913,039.05013,847.200261.99712,789.50015,719.300OK
base64DecodeTiny0.1060.1000.3000.0240.1001.500OK
base64DecodeSmall0.5310.5001.1000.1210.5001.100OK
base64DecodeMedium4.0564.0004.7000.1773.9004.700OK
base64DecodeLarge9.42510.05010.5000.9618.10010.800OK
base64EncodeTiny0.0440.0000.2000.0500.0000.900OK
base64EncodeSmall0.4630.4001.0000.1220.4001.000OK
base64EncodeMedium3.7373.8004.0000.1543.00015.400OK
base64EncodeLarge6.0386.0506.5000.2855.5006.500OK
base64UrlDecodeTiny0.8310.8001.6000.0460.8001.700OK
base64UrlDecodeSmall8.5948.6008.8000.0978.5009.900OK
base64UrlDecodeMedium85.21981.20097.4008.93566.90097.700OK
base64UrlDecodeLarge126.806127.550140.5004.741112.800175.500OK
base64UrlEncodeTiny0.1000.1000.1000.0000.1001.400OK
base64UrlEncodeSmall0.5370.4001.1000.2260.4005.100OK
base64UrlEncodeMedium3.1883.2003.8000.2962.8004.900OK
base64UrlEncodeLarge7.3757.7008.6000.7915.8008.700OK
deserializeTiny21.06219.75033.7002.73418.20036.900OK
deserializeSmall24.93824.80052.9000.63023.80054.000OK
deserializeMedium27.43127.30029.1000.51026.50038.300OK
deserializeLarge28.18128.20030.2000.38427.10031.500OK
hexDecodeTiny0.1000.1000.8000.0000.1000.900OK
hexDecodeSmall0.3310.3001.0000.1210.3002.200OK
hexDecodeMedium2.5442.7002.8000.2342.0002.800OK
hexDecodeLarge5.4815.1007.8000.8464.8007.900OK
hexEncodeTiny0.9000.9000.9000.0000.9001.000OK
hexEncodeSmall6.9386.9007.5000.1456.9007.600OK
hexEncodeMedium59.98161.85070.9002.96255.50080.800OK
hexEncodeLarge117.581116.950136.9004.065111.000604.300OK
itoaTiny0.0130.0000.3000.0330.0000.900OK
itoaTiny0.1000.1000.2000.0000.1000.700OK
itoaSmall0.1130.1000.2000.0330.1003.100OK
itoaSmall0.2940.3000.3000.0240.2000.600OK
itoaMedium0.3000.3000.3000.0000.3001.900OK
itoaMedium0.5000.5000.5000.0000.4001.100OK
itoaLarge0.7000.7000.7000.0000.7001.300OK
itoaLarge0.9000.9000.9000.0000.8001.500OK
jsonDeserializeTiny21.74421.55024.9000.80919.80030.000OK
jsonDeserializeSmall20.22520.25023.7000.58119.20044.100OK
jsonDeserializeMedium21.26221.15023.9000.69320.20049.800OK
jsonDeserializeLarge20.50620.35021.4000.35119.80025.600OK
jsonSerializeTiny20.52520.30030.0000.81418.80045.100OK
jsonSerializeSmall24.91924.85029.4000.30323.50030.500OK
jsonSerializeMedium26.48126.50043.7000.53925.200103.400OK
jsonSerializeLarge28.36228.35034.7000.86326.00046.800OK
memoryCompareTiny0.0130.0000.1000.0330.0000.100OK
memoryCompareSmall0.2310.2001.1000.0980.2001.900OK
memoryCompareMedium1.8882.0502.2000.2711.5002.200OK
memoryCompareLarge3.6253.6003.7000.0433.5003.700OK
memorySearchTiny0.1000.1000.2000.0000.1001.100OK
memorySearchTiny0.1000.1000.1000.0000.1000.200OK
memorySearchTiny0.1000.1000.2000.0000.1000.500OK
memorySearchSmall0.1000.1000.1000.0000.1000.100OK
memorySearchSmall0.1000.1000.1000.0000.1000.700OK
memorySearchSmall0.1000.1000.1000.0000.1000.700OK
memorySearchMedium0.1000.1000.1000.0000.1000.800OK
memorySearchMedium0.1000.1000.1000.0000.1000.100OK
memorySearchMedium0.1000.1000.1000.0000.1000.100OK
memorySearchLarge0.1000.1000.1000.0000.1000.100OK
memorySearchLarge0.1000.1000.1000.0000.1000.700OK
memorySearchLarge0.1000.1000.1000.0000.1000.600OK
serializeTiny18.35618.30019.2000.45817.50019.400OK
serializeSmall18.23718.10020.0000.46917.30029.500OK
serializeMedium19.03719.05026.2000.45917.90039.500OK
serializeLarge19.55619.60020.4000.28918.70032.100OK
strLenTiny0.4000.4000.5000.0000.4000.500OK
strLenSmall2.7192.7003.3000.0732.70021.900OK
strLenMedium21.64420.10035.0003.85618.200329.200OK
strLenLarge33.41333.25035.7000.63232.80038.600OK
stringSplitTiny0.2000.2000.2000.0000.2000.900OK
stringSplitTiny0.2130.2000.3000.0330.2001.100OK
stringSplitSmall0.4310.4001.1000.2020.3001.200OK
stringSplitSmall0.4380.4001.0000.1220.4001.100OK
stringSplitMedium2.3192.3002.6000.0812.100203.300OK
stringSplitMedium2.5622.5504.2000.0992.30012.500OK
stringSplitLarge4.4124.4004.9000.0864.3005.000OK
stringSplitLarge4.3194.4504.8000.3543.4005.000OK

Jim8y avatar Nov 07 '25 12:11 Jim8y