Page MenuHomePhabricator

Sprinkle some sweet noexcepts over the RNG code
ClosedPublic

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

Details

Reviewers
deadalnix
Fabien
jasonbcox
Group Reviewers
Restricted Owners Package(Owns No Changed Paths)
Restricted Project
Commits
rABC574d5797e044: Sprinkle some sweet noexcepts over the RNG code
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
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

nakihito created this revision.Tue, Nov 5, 23:03
Owners added a reviewer: Restricted Owners Package.Tue, Nov 5, 23:03
Herald added a reviewer: Restricted Project. · View Herald TranscriptTue, Nov 5, 23:03
Fabien requested changes to this revision.Wed, Nov 6, 09:32

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

This revision now requires changes to proceed.Wed, Nov 6, 09:32
nakihito edited the test plan for this revision. (Show Details)Wed, Nov 6, 17:49
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)Wed, Nov 6, 18:56
nakihito edited the test plan for this revision. (Show Details)
nakihito requested review of this revision.Wed, Nov 6, 18:59

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

Done and added.

deadalnix accepted this revision.Thu, Nov 7, 15:07
Fabien accepted this revision.Thu, Nov 7, 20:35
This revision is now accepted and ready to land.Thu, Nov 7, 20:35