Bitcoin full node and query server

Aug 6, 2024

View in context in the libbitcoin Slack #general mirror.

evoskuil20:04
Basically we get super-efficient and simple block object allocation and free deallocation. No custom memory allocator can beat a single-threaded linear allocator, as it's just a couple of math ops. We can then move the blocks across threads at zero additional deallocation cost, where previously that cost was entirely prohibitive, and don't even have to worry about deallocation order. One side benefit, we now also have a precise and free measurement of the allocated size of block objects (the only ones that really matter). We can also apply this same allocation strategy to block and prevout deserialization from the store for the purpose of validation (in the case where the block object or prevout isn't cached).
(edited)