Page MenuHomePhabricator

Sprinkle some sweet noexcepts over the RNG code
ClosedPublic

Authored by nakihito on Nov 5 2019, 23:03.

Details

Summary
Test Plan
make check
./bench/bench_bitcoin

Benchmark output:

Benchmark, evals, iterations, total, min, max, median
AES128CBC_DecryptNoPad, 5, 200000, 7.76418, 7.71943e-06, 7.81508e-06, 7.74418e-06
AES128CBC_DecryptWithPad, 5, 200000, 7.5938, 7.54535e-06, 7.66289e-06, 7.57333e-06
AES128CBC_EncryptNoPad, 5, 200000, 7.36773, 7.198e-06, 7.73853e-06, 7.30109e-06
AES128CBC_EncryptWithPad, 5, 200000, 8.10075, 7.90823e-06, 8.3087e-06, 8.14945e-06
AES128_Decrypt, 5, 800000, 7.13177, 1.76063e-06, 1.81397e-06, 1.77959e-06
AES128_Encrypt, 5, 800000, 6.89351, 1.70942e-06, 1.75964e-06, 1.7161e-06
AES256CBC_DecryptNoPad, 5, 160000, 7.77314, 9.51821e-06, 9.85725e-06, 9.73539e-06
AES256CBC_DecryptWithPad, 5, 160000, 7.84954, 9.66903e-06, 1.02487e-05, 9.67766e-06
AES256CBC_EncryptNoPad, 5, 160000, 7.47867, 9.17154e-06, 9.62185e-06, 9.33446e-06
AES256CBC_EncryptWithPad, 5, 160000, 8.20249, 1.01382e-05, 1.03722e-05, 1.02145e-05
AES256_Decrypt, 5, 640000, 5.71321, 1.76537e-06, 1.80652e-06, 1.78055e-06
AES256_Encrypt, 5, 640000, 5.54428, 1.71406e-06, 1.74827e-06, 1.73212e-06
Base58CheckEncode, 5, 320000, 3.34041, 2.06831e-06, 2.13532e-06, 2.07914e-06
Base58Decode, 5, 800000, 3.47966, 8.59457e-07, 8.82975e-07, 8.64745e-07
Base58Encode, 5, 470000, 3.05094, 1.27786e-06, 1.33826e-06, 1.28919e-06
BenchLockedPool, 5, 530, 4.71706, 0.00174215, 0.0018301, 0.00176626
BnBExhaustion, 5, 650, 2.9524, 0.000895282, 0.000929286, 0.000906323
CCheckQueueSpeedPrevectorJob, 5, 1400, 4.43156, 0.000613324, 0.000653541, 0.000633404
CCoinsCaching, 5, 170000, 2.49905, 2.61282e-06, 3.88149e-06, 2.71856e-06
CashAddrDecode, 5, 800000, 3.30446, 8.21157e-07, 8.36882e-07, 8.23732e-07
CashAddrEncode, 5, 800000, 2.37713, 4.08393e-07, 7.5294e-07, 5.84691e-07
CoinSelection, 5, 650, 0.712802, 0.000218753, 0.000219699, 0.000219437
ConstructGCSFilter, 5, 1000, 7.74431, 0.00151097, 0.00156355, 0.00155993
DeserializeAndCheckBlockTest, 5, 160, 7.72308, 0.00956237, 0.0097374, 0.00966744
DeserializeBlockTest, 5, 130, 3.76622, 0.00493366, 0.00703804, 0.00507304
FastRandom_1bit, 5, 440000000, 4.80422, 2.0622e-09, 2.33977e-09, 2.093e-09
FastRandom_32bit, 5, 110000000, 5.62574, 9.22195e-09, 1.33572e-08, 9.4501e-09
MatchGCSFilter, 5, 50000, 6.31522, 2.43371e-05, 2.56257e-05, 2.55857e-05
MempoolEviction, 5, 41000, 4.05736, 1.85055e-05, 2.44606e-05, 1.86552e-05
MerkleRoot, 5, 800, 26.3567, 0.00652712, 0.0067625, 0.00656133
PrevectorClearNontrivial, 5, 28300, 9.30475, 6.56267e-05, 6.59117e-05, 6.57215e-05
PrevectorClearTrivial, 5, 88600, 16.8615, 3.7516e-05, 3.88787e-05, 3.80711e-05
PrevectorDeserializeNontrivial, 5, 6800, 2.49856, 7.19966e-05, 7.56962e-05, 7.21425e-05
PrevectorDeserializeTrivial, 5, 52000, 3.29658, 1.24636e-05, 1.27943e-05, 1.27885e-05
PrevectorDestructorNontrivial, 5, 28800, 9.89368, 6.75929e-05, 7.23502e-05, 6.77406e-05
PrevectorDestructorTrivial, 5, 88900, 5.42173, 1.15817e-05, 1.43287e-05, 1.16615e-05
PrevectorResizeNontrivial, 5, 28900, 5.40892, 3.70762e-05, 3.81311e-05, 3.71407e-05
PrevectorResizeTrivial, 5, 90300, 6.33541, 1.33948e-05, 1.51491e-05, 1.36125e-05
RIPEMD160, 5, 440, 5.13205, 0.00228526, 0.00244163, 0.00230855
RollingBloom, 5, 1500000, 3.9022, 4.98196e-07, 5.68528e-07, 5.11341e-07
RpcMempool, 5, 40, 4.34766, 0.0213813, 0.0224049, 0.0216815
SHA1, 5, 570, 4.99945, 0.00173522, 0.00180181, 0.0017417
SHA256, 5, 340, 6.08309, 0.00294647, 0.00451245, 0.00361414
SHA256D64_1024, 5, 7400, 27.4777, 0.000733192, 0.000754095, 0.000741837
SHA256_32b, 5, 4700000, 5.33407, 2.12022e-07, 2.85587e-07, 2.12509e-07
SHA512, 5, 330, 4.56999, 0.00273323, 0.00283063, 0.00275855
SipHash_32b, 5, 40000000, 5.36399, 2.62677e-08, 2.77298e-08, 2.67231e-08
Sleep100ms, 5, 10, 5.00405, 0.100078, 0.100083, 0.100082
Trig, 5, 12000000, 1.22943, 1.93016e-08, 2.27244e-08, 1.95578e-08

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Owners added a reviewer: Restricted Owners Package.Nov 5 2019, 23:03
Fabien requested changes to this revision.Nov 6 2019, 09:32

Can you run some benchmark on this change, and add it to the test plan ?

This revision now requires changes to proceed.Nov 6 2019, 09:32
nakihito edited the test plan for this revision. (Show Details)
nakihito edited the test plan for this revision. (Show Details)
nakihito edited the test plan for this revision. (Show Details)
nakihito requested review of this revision.Nov 6 2019, 18:59

Can you run some benchmark on this change, and add it to the test plan ?

Done and added.

This revision is now accepted and ready to land.Nov 7 2019, 20:35