Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cache size optimizations #1981

Merged
merged 1 commit into from Nov 8, 2012
Merged

Cache size optimizations #1981

merged 1 commit into from Nov 8, 2012

Conversation

sipa
Copy link
Member

@sipa sipa commented Nov 4, 2012

Tweaks for LevelDB's caches.

@jgarzik
Copy link
Contributor

jgarzik commented Nov 4, 2012

ACK

@BitcoinPullTester
Copy link

Automatic sanity-testing: PASSED, see http://jenkins.bluematt.me/pull-tester/1c83b0a3771bc601fdc75588f2cd45318b19c526 for binaries and test log.

@gavinandresen
Copy link
Contributor

ACK

@Diapolo
Copy link

Diapolo commented Nov 8, 2012

I'm interested, what benefit does this induce performance wise? Any numbers or some more details?

@sipa
Copy link
Member Author

sipa commented Nov 8, 2012

Before, the LevelDB write buffer was always 4 MiB, the LevelDB cache for both databases (one very small, one somewhat larger), and the coin cache was flushed everytime 5000 transactions changed.

This commit makes the -dbcache value better respected, by splitting it over all types of caches, using a meaningful distribution (I tried a few variations). The result is far fewer flushes during IBD, lower memory usage (as it's 25 MiB total now, instead of 2x 25 MiB in addition to the coin cache and write buffer) and the available cache size is used more evenly.

Performance-wise: I got a 1.4x speedup for a -reindex to block 193000.

sipa added a commit that referenced this pull request Nov 8, 2012
Cache size optimizations
@sipa sipa merged commit 16d9d61 into bitcoin:master Nov 8, 2012
laudney pushed a commit to reddcoin-project/reddcoin-3.10 that referenced this pull request Mar 19, 2014
KolbyML pushed a commit to KolbyML/bitcoin that referenced this pull request Dec 5, 2020
be3ae1b [Cleanup][Sapling] Remove uint252 class (random-zebra)
1353507 [Cleanup] Remove Sprout pseudo-random functions (random-zebra)
1c23279 [Cleanup] Remove old NoteEncryption/NoteDecryption classes (random-zebra)
52d2625 [Cleanup] Remove Sprout address/key classes (random-zebra)
09875f0 [Cleanup] Remove SproutNote class (random-zebra)
8747949 [Cleanup][RPC] Remove unused fields in validateaddress output (random-zebra)

Pull request description:

  Remove all sprout-related code.

ACKs for top commit:
  furszy:
    code reviewed ACK be3ae1b .
  Fuzzbawls:
    Code/Tests ACK be3ae1b

Tree-SHA512: 8354adb14372126495a069c0c4aa9e0ee4c400ebf8cdff4e120a67c0e3ea1a190d1617645bc03e02e8370ab644c14769232ae8cef57d6230adc0095ac70641dd
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants