Bitcoin full node and query server

May 22, 2024

View in context in the libbitcoin Slack #general mirror.

evoskuil00:28
I picked up 4 x 8GiB RAM cards, so that I'll be able to test 8/16/24/32GiB configurations. Should have that and my 2Gbps WAN up and running tomorrow. I've moved on to concurrent validation. As a rough approximation, this process...
  • deserialize block
  • read block/tx previous valid/invalid states
  • populate all tx input prevouts
  • validate all txs/block (accept/connect)
  • write validation metadata for each tx/block
  • read block previous confirmable state
  • confirm each tx/block (maturity, spent, double spend)
  • write confirmable metadata for block
  • associate confirmed txs with their block
  • organize block (index height)
...takes about 1 second for the largest blocks when performed entirely sequentially. If we (pessimistically) extend that across all blocks (early 300k blocks are orders of magnitude faster), that's 233 hours (10 days). If we (optimistically) divide that by my 64 cores, it's 3.65 hours. Realistically I expect that to be closer to 2 hrs.
(edited)
jungly07:49
@Tanay Raikhere and @Shashank Shekhar Singh - can help here. They are also building the master branch on their machines to get some more numbers on the rate of downloading and validating the chain on their machines. Tanya, Shekhar, if you have any questions configuration etc, let us know.
👍🏻 1👍 2