@@ -16,6 +16,7 @@ use criterion::{criterion_group, criterion_main, Bencher, black_box, Criterion};
16
16
17
17
use trie_db:: { NibbleSlice , proof:: { generate_proof, verify_proof} , Trie } ;
18
18
use trie_standardmap:: { Alphabet , StandardMap , ValueMode } ;
19
+ use reference_trie:: ExtensionLayout as Layout ;
19
20
20
21
criterion_group ! ( benches,
21
22
root_old,
@@ -75,7 +76,7 @@ fn root_a_big_v(c: &mut Criterion) {
75
76
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
76
77
77
78
78
- reference_trie:: calc_root ( inputc) ;
79
+ reference_trie:: calc_root :: < Layout , _ , _ , _ > ( inputc) ;
79
80
} ) ,
80
81
data,
81
82
) ;
@@ -96,7 +97,7 @@ fn root_b_big_v(c: &mut Criterion) {
96
97
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
97
98
98
99
99
- reference_trie:: calc_root ( inputc) ;
100
+ reference_trie:: calc_root :: < Layout , _ , _ , _ > ( inputc) ;
100
101
} ) ,
101
102
data,
102
103
) ;
@@ -118,7 +119,7 @@ fn root_a_small_v(c: &mut Criterion) {
118
119
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
119
120
120
121
121
- reference_trie:: calc_root ( inputc) ;
122
+ reference_trie:: calc_root :: < Layout , _ , _ , _ > ( inputc) ;
122
123
} ) ,
123
124
data,
124
125
) ;
@@ -139,7 +140,7 @@ fn root_b_small_v(c: &mut Criterion) {
139
140
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
140
141
141
142
142
- reference_trie:: calc_root ( inputc) ;
143
+ reference_trie:: calc_root :: < Layout , _ , _ , _ > ( inputc) ;
143
144
} ) ,
144
145
data,
145
146
) ;
@@ -160,7 +161,7 @@ fn root_old(c: &mut Criterion) {
160
161
. iter ( )
161
162
. map ( |v| ( & v. 0 , & v. 1 ) ) ;
162
163
163
- reference_trie:: reference_trie_root ( inputc) ;
164
+ reference_trie:: reference_trie_root :: < Layout , _ , _ , _ > ( inputc) ;
164
165
} ) ,
165
166
data,
166
167
) ;
@@ -185,7 +186,7 @@ fn root_new(c: &mut Criterion) {
185
186
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
186
187
187
188
188
- reference_trie:: calc_root ( inputc) ;
189
+ reference_trie:: calc_root :: < Layout , _ , _ , _ > ( inputc) ;
189
190
} ) ,
190
191
data,
191
192
) ;
@@ -287,7 +288,7 @@ fn trie_mut_root_a(c: &mut Criterion) {
287
288
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
288
289
289
290
290
- reference_trie:: calc_root ( inputc) ;
291
+ reference_trie:: calc_root :: < Layout , _ , _ , _ > ( inputc) ;
291
292
} ) ,
292
293
data) ;
293
294
}
@@ -306,7 +307,7 @@ fn trie_mut_root_b(c: &mut Criterion) {
306
307
. map ( |v| ( & v. 0 , & v. 1 ) )
307
308
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
308
309
309
- reference_trie:: calc_root ( inputc) ;
310
+ reference_trie:: calc_root :: < Layout , _ , _ , _ > ( inputc) ;
310
311
} ) ,
311
312
data) ;
312
313
}
@@ -326,7 +327,7 @@ fn trie_mut_ref_root_a(c: &mut Criterion) {
326
327
. map ( |v| ( & v. 0 , & v. 1 ) )
327
328
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
328
329
329
- reference_trie:: reference_trie_root ( inputc) ;
330
+ reference_trie:: reference_trie_root_iter_build :: < Layout , _ , _ , _ > ( inputc) ;
330
331
} ) ,
331
332
data) ;
332
333
}
@@ -346,7 +347,7 @@ fn trie_mut_ref_root_b(c: &mut Criterion) {
346
347
. map ( |v| ( & v. 0 , & v. 1 ) )
347
348
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
348
349
349
- reference_trie:: reference_trie_root ( inputc) ;
350
+ reference_trie:: reference_trie_root_iter_build :: < Layout , _ , _ , _ > ( inputc) ;
350
351
} ) ,
351
352
data) ;
352
353
}
@@ -366,7 +367,7 @@ fn trie_mut_a(c: &mut Criterion) {
366
367
367
368
let mut root = Default :: default ( ) ;
368
369
let mut mdb = memory_db:: MemoryDB :: < _ , HashKey < _ > , _ > :: default ( ) ;
369
- let mut trie = reference_trie:: RefTrieDBMut :: new ( & mut mdb, & mut root) ;
370
+ let mut trie = reference_trie:: TrieDBMut :: < Layout > :: new ( & mut mdb, & mut root) ;
370
371
for ( key, value) in datac {
371
372
trie. insert ( & key, & value)
372
373
. expect ( "changes trie: insertion to trie is not allowed to fail within runtime" ) ;
@@ -390,7 +391,7 @@ fn trie_mut_b(c: &mut Criterion) {
390
391
391
392
let mut root = Default :: default ( ) ;
392
393
let mut mdb = memory_db:: MemoryDB :: < _ , HashKey < _ > , _ > :: default ( ) ;
393
- let mut trie = reference_trie:: RefTrieDBMut :: new ( & mut mdb, & mut root) ;
394
+ let mut trie = reference_trie:: TrieDBMut :: < Layout > :: new ( & mut mdb, & mut root) ;
394
395
for ( key, value) in datac {
395
396
trie. insert ( & key, & value)
396
397
. expect ( "changes trie: insertion to trie is not allowed to fail within runtime" ) ;
@@ -416,7 +417,7 @@ fn trie_mut_build_a(c: &mut Criterion) {
416
417
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
417
418
418
419
let mut mdb = memory_db:: MemoryDB :: < _ , HashKey < _ > , _ > :: default ( ) ;
419
- reference_trie:: calc_root_build ( inputc, & mut mdb) ;
420
+ reference_trie:: calc_root_build :: < Layout , _ , _ , _ , _ > ( inputc, & mut mdb) ;
420
421
} ) ,
421
422
data) ;
422
423
}
@@ -438,7 +439,7 @@ fn trie_mut_build_b(c: &mut Criterion) {
438
439
. collect :: < std:: collections:: BTreeMap < _ , _ > > ( ) ;
439
440
440
441
let mut mdb = memory_db:: MemoryDB :: < _ , HashKey < _ > , _ > :: default ( ) ;
441
- reference_trie:: calc_root_build ( inputc, & mut mdb) ;
442
+ reference_trie:: calc_root_build :: < Layout , _ , _ , _ , _ > ( inputc, & mut mdb) ;
442
443
} ) ,
443
444
data) ;
444
445
}
@@ -449,11 +450,11 @@ fn trie_iteration(c: &mut Criterion) {
449
450
let input = input2 ( 29 , 204800 , 32 ) ;
450
451
451
452
let mut mdb = memory_db:: MemoryDB :: < _ , HashKey < _ > , _ > :: default ( ) ;
452
- let root = reference_trie:: calc_root_build ( input, & mut mdb) ;
453
+ let root = reference_trie:: calc_root_build :: < Layout , _ , _ , _ , _ > ( input, & mut mdb) ;
453
454
454
455
c. bench_function ( "trie_iteration" , move |b : & mut Bencher |
455
456
b. iter ( || {
456
- let trie = reference_trie:: RefTrieDB :: new ( & mdb, & root) . unwrap ( ) ;
457
+ let trie = reference_trie:: TrieDB :: < Layout > :: new ( & mdb, & root) . unwrap ( ) ;
457
458
let mut iter = trie_db:: TrieDBNodeIterator :: new ( & trie) . unwrap ( ) ;
458
459
assert ! ( iter. all( |result| result. is_ok( ) ) ) ;
459
460
} )
@@ -475,9 +476,9 @@ fn trie_proof_verification(c: &mut Criterion) {
475
476
keys. dedup ( ) ;
476
477
477
478
let mut mdb = memory_db:: MemoryDB :: < _ , HashKey < _ > , _ > :: default ( ) ;
478
- let root = reference_trie:: calc_root_build ( data, & mut mdb) ;
479
+ let root = reference_trie:: calc_root_build :: < Layout , _ , _ , _ , _ > ( data, & mut mdb) ;
479
480
480
- let trie = reference_trie:: RefTrieDB :: new ( & mdb, & root) . unwrap ( ) ;
481
+ let trie = reference_trie:: TrieDB :: < Layout > :: new ( & mdb, & root) . unwrap ( ) ;
481
482
let proof = generate_proof ( & trie, keys. iter ( ) ) . unwrap ( ) ;
482
483
let items = keys. into_iter ( )
483
484
. map ( |key| {
@@ -488,7 +489,7 @@ fn trie_proof_verification(c: &mut Criterion) {
488
489
489
490
c. bench_function ( "trie_proof_verification" , move |b : & mut Bencher |
490
491
b. iter ( || {
491
- verify_proof :: < reference_trie :: ExtensionLayout , _ , _ , _ > (
492
+ verify_proof :: < Layout , _ , _ , _ > (
492
493
& root,
493
494
& proof,
494
495
items. iter ( )
0 commit comments