Updated benchmarks after internal API changes
This commit is contained in:
@@ -5,6 +5,7 @@ defines.LOOKAHEAD_SIZE = 'BLOCK_COUNT / 8'
|
||||
|
||||
[cases.bench_btree_lookup]
|
||||
defines.N = [8, 16, 32, 64, 128, 256, 1024]
|
||||
defines.VALIDATE = [1, 0]
|
||||
# 0 = in-order
|
||||
# 1 = reversed-order
|
||||
# 2 = random-order
|
||||
@@ -31,11 +32,14 @@ code = '''
|
||||
lfs_off_t i_
|
||||
= (ORDER == 0) ? i
|
||||
: (ORDER == 1) ? 0
|
||||
: BENCH_PRNG(&prng) % (btree.weight+1);
|
||||
: BENCH_PRNG(&prng) % (lfsr_btree_weight(&btree)+1);
|
||||
lfsr_btree_push(&lfs, &btree, i_, LFSR_TAG_INLINED, 1,
|
||||
&alphas[i % 26], 1) => 0;
|
||||
}
|
||||
|
||||
// assume an unfetched btree
|
||||
btree.root.off = 0;
|
||||
|
||||
// bench lookup
|
||||
BENCH_START();
|
||||
lfs_size_t i = BENCH_PRNG(&prng) % N;
|
||||
@@ -45,8 +49,8 @@ code = '''
|
||||
lfs_size_t weight_;
|
||||
|
||||
lfsr_btree_get(&lfs, &btree, i,
|
||||
&tag_, &id_, &weight_,
|
||||
buffer, 4) => 1;
|
||||
&id_, &tag_, &weight_,
|
||||
buffer, 4, VALIDATE) => 1;
|
||||
assert(tag_ == LFSR_TAG_INLINED);
|
||||
assert(id_ == i);
|
||||
assert(weight_ == 1);
|
||||
@@ -55,6 +59,7 @@ code = '''
|
||||
|
||||
[cases.bench_btree_commit]
|
||||
defines.N = [8, 16, 32, 64, 128, 256, 1024]
|
||||
defines.VALIDATE = 0
|
||||
# 0 = in-order
|
||||
# 1 = reversed-order
|
||||
# 2 = random-order
|
||||
@@ -85,7 +90,7 @@ code = '''
|
||||
lfs_off_t i_
|
||||
= (ORDER == 0) ? i
|
||||
: (ORDER == 1) ? 0
|
||||
: BENCH_PRNG(&prng) % (btree.weight+1);
|
||||
: BENCH_PRNG(&prng) % (lfsr_btree_weight(&btree)+1);
|
||||
lfsr_btree_push(&lfs, &btree, i_, LFSR_TAG_INLINED, 1,
|
||||
&alphas[i % 26], 1) => 0;
|
||||
}
|
||||
@@ -105,8 +110,8 @@ code = '''
|
||||
lfs_size_t weight_;
|
||||
|
||||
lfsr_btree_get(&lfs, &btree, i,
|
||||
&tag_, &id_, &weight_,
|
||||
buffer, 4) => 1;
|
||||
&id_, &tag_, &weight_,
|
||||
buffer, 4, VALIDATE) => 1;
|
||||
assert(tag_ == LFSR_TAG_INLINED);
|
||||
assert(id_ == i);
|
||||
assert(weight_ == 1);
|
||||
|
||||
Reference in New Issue
Block a user