get_member_last_page
Scenario:
Results:
Function | Run time [s] | |
---|---|---|
insert | 19.61 | 19.69 |
get_member_last_page | 18.33 | 18.38 |
SeekForPrev | 14.95 | 15.05 |
get_member_last_page
with key_may_exist
Idea: SeekForPrev is slow, and key_may_exist
could provide a good heuristic for skipping it entirely
Result: 👎
function | base case [s] | optimized [s] |
---|---|---|
insert | 19.61 | 22.21 |
get_member_last_page | 18.33 | 20.79 |
SeekForPrev | 14.95 | 14.18 |
key_may_exist | 3.13 |
total | 647830 |
---|---|
may_exist | 642752 |
Idea: We simply cache entire pages
function | base case [s] | cache=10’000 | cache=100’000 |
---|---|---|---|
insert | 19.61 | 13.68 | 10.93 |
get_member_last_page | 18.33 | 12.10 | 9.14 |
SeekForPrev | 14.95 | 9.98 | 7.37 |
lru::put | 0.105 | ||
lru::get | 0.042 |
cache=10’000 | cache=100’000 | |
---|---|---|
total | 647830 | 647830 |
page_cache_hit | 239136 | 355314 |