diff options
author | obscuren <geffobscura@gmail.com> | 2015-05-17 07:42:30 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2015-05-18 19:59:22 +0800 |
commit | c67424ecc8a75d7c0bc942227a4c4e5c5628d7bc (patch) | |
tree | c234714a27c5bab93d56236601524cf7664df5e8 /eth | |
parent | 443d0248436f653bc2d56653dd52b8abbe408f60 (diff) | |
download | dexon-c67424ecc8a75d7c0bc942227a4c4e5c5628d7bc.tar.gz dexon-c67424ecc8a75d7c0bc942227a4c4e5c5628d7bc.tar.zst dexon-c67424ecc8a75d7c0bc942227a4c4e5c5628d7bc.zip |
core: parallelise nonce checking when processing blocks
ChainManager now uses a parallel approach to block processing where all
nonces are checked seperatly from the block processing process. This
speeds up the process by about 3 times on my i7
Diffstat (limited to 'eth')
-rw-r--r-- | eth/backend.go | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/eth/backend.go b/eth/backend.go index a7107f8d8..519a4c410 100644 --- a/eth/backend.go +++ b/eth/backend.go @@ -266,9 +266,9 @@ func New(config *Config) (*Ethereum, error) { MinerThreads: config.MinerThreads, } - eth.chainManager = core.NewChainManager(blockDb, stateDb, eth.EventMux()) - eth.downloader = downloader.New(eth.EventMux(), eth.chainManager.HasBlock, eth.chainManager.GetBlock) eth.pow = ethash.New() + eth.chainManager = core.NewChainManager(blockDb, stateDb, eth.pow, eth.EventMux()) + eth.downloader = downloader.New(eth.EventMux(), eth.chainManager.HasBlock, eth.chainManager.GetBlock) eth.txPool = core.NewTxPool(eth.EventMux(), eth.chainManager.State, eth.chainManager.GasLimit) eth.blockProcessor = core.NewBlockProcessor(stateDb, extraDb, eth.pow, eth.txPool, eth.chainManager, eth.EventMux()) eth.chainManager.SetProcessor(eth.blockProcessor) |