aboutsummaryrefslogtreecommitdiffstats
path: root/consensus/ethash/algorithm.go
Commit message (Collapse)AuthorAgeFilesLines
* consensus/ethash: improve cache/dataset handling (#15864)Felix Lange2018-01-231-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * consensus/ethash: add maxEpoch constant * consensus/ethash: improve cache/dataset handling There are two fixes in this commit: Unmap the memory through a finalizer like the libethash wrapper did. The release logic was incorrect and freed the memory while it was being used, leading to crashes like in #14495 or #14943. Track caches and datasets using simplelru instead of reinventing LRU logic. This should make it easier to see whether it's correct. * consensus/ethash: restore 'future item' logic in lru * consensus/ethash: use mmap even in test mode This makes it possible to shorten the time taken for TestCacheFileEvict. * consensus/ethash: shuffle func calc*Size comments around * consensus/ethash: ensure future cache/dataset is in the lru cache * consensus/ethash: add issue link to the new test * consensus/ethash: fix vet * consensus/ethash: fix test * consensus: tiny issue + nitpick fixes
* ethash: fix typoErnesto del Toro2017-10-131-3/+3
|
* rlp, trie, contracts, compression, consensus: improve comments (#14580)S. Matthew English2017-06-121-3/+0
|
* common/bitutil, consensus/ethash: reusable bitutil packagePéter Szilágyi2017-05-051-1/+2
|
* core, consensus: pluggable consensus engines (#3817)Péter Szilágyi2017-04-051-0/+1103
This commit adds pluggable consensus engines to go-ethereum. In short, it introduces a generic consensus interface, and refactors the entire codebase to use this interface.