mirror of
https://github.com/LBRYFoundation/lbry.com.git
synced 2025-08-31 01:11:25 +00:00
fix post
This commit is contained in:
parent
8e7cd9a6ec
commit
16179b5e55
1 changed files with 9 additions and 1 deletions
|
@ -1,3 +1,11 @@
|
|||
---
|
||||
author: samuel-lbryian
|
||||
title: 'Claim Trie Memory Reduction'
|
||||
date: '2019-03-25 15:00:00'
|
||||
cover: 'database2.jpg'
|
||||
category: technical
|
||||
---
|
||||
|
||||
# The claim trie memory reduction
|
||||
Here follows a little writeup on some work that we have done to make the data structure in LBRYcrd less naive (and less RAM-hungry). We anticipate that it will ship in a LBRYcrd release in late spring.
|
||||
|
||||
|
@ -172,4 +180,4 @@ Find the index of child starting with nibble n: `popcount(mask & ((1 << n) - 1)`
|
|||
|
||||
Where popcount represents __builtin_popcountll or some other 64bit intrinsic for accessing the CPU's POPCNT instruction (which counts the number of set bits).
|
||||
|
||||
In summary, it's possible to build a very efficient trie structure on top of a simple node definition that includes a sorted or indexed map of the node's children. The deeper the trie goes, the less likely it is to benefit from overlapping keys. There is no reason to use the naive trie in any scenario.
|
||||
In summary, it's possible to build a very efficient trie structure on top of a simple node definition that includes a sorted or indexed map of the node's children. The deeper the trie goes, the less likely it is to benefit from overlapping keys. There is no reason to use the naive trie in any scenario.
|
||||
|
|
Loading…
Add table
Reference in a new issue