Graphical Ethereum Turbo-Geth client: How is the performance improved like a “Fantasy Night”?

0

 358 total views

Turbo-Geth contributor Alexey Akhunov explained two important improvements: one is to change the database model from a tree to a flat one; the other is a phased synchronization method.

Original title: “Introduction | Turbo-Geth Client: How to Improve Performance”
Written by: Alexey Akhunov, Turbo-Geth contributor

This article is a slide published by Alexey Akhunov, a contributor to the Turbo-Geth project. Recently, Turbo-Geth client has attracted much attention because of its excellent synchronization performance. In this PPT titled “too good to be true” which means “too good to be true” or “beautiful as a fantasy”), Alexey explained the two most important improvements of Turbo-Geth. One is to change the database model from a tree type to a flat type; because the tree type database is helpful to quickly calculate the state root, but it does not help the EVM to quickly access the state object; while using a flat database, another This kind of “intermediate hash value” data can well meet the two needs of EVM for fast access to the state and fast calculation of the state root; the second is the staged sync method, which will process a block Decompose into several specific steps, and then process the same step for multiple consecutive blocks, and then process the next step for the batch of blocks from the beginning; this is actually equivalent to completing the data before inserting the data into the database Pre-sorting work; on the other hand, this also makes the client’s workflow modular, allowing us to optimize performance in a targeted manner. Interested readers can learn more from the hyperlink at the end of the article.

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Introduction | Turbo-Geth Client: How to achieve performance improvements

Source link: github.com

Disclaimer:

Blockcast.cc does not endorse any content or product on this page. While we aim at providing you all important information that we could obtain, readers should do their own research before taking any actions related to the company and carry full responsibility for their decisions, nor can this article be considered as investment advice or recommendations. Every investment and trading move involves risk, you should conduct your own research when making a decision.