My bitcoin qt client v8.5 crashed last week (I had already got full blockchain indexed a long time ago) and I had to force quit it. It's now re-indexing the blockchain but using sometimes up to 427% of Macbook CPU and the fans are on at 6000 revs for hours... It never did this when I first synced up so what is wrong this time round?

Thanks Bard


When you're synchronizing from network, you're most likely limited by the rate of fetching blocks. When you're reindexing blocks that are already present on disk, only CPU is the bottleneck.

The algorithm to decide where and when to request blocks is relatively stupid, slow, and easy to confuse. This is why during synchronization from network, you rarely use all bandwidth available. This is being worked on, but it's not a simple problem, if you want to avoid many problematic edge cases. EDIT: bandwidth usage should be a lot better since Bitcoin Core v0.10.

When reindexing block on disk, the reference client will by default use all CPU cores available, to speed up the process. You can put par=1 in bitcoin.conf to restrict the validation operation to a single core. As of 0.9 (not yet released), you'll also be able to change this value in the GUI configuration.

  • Thanks Pieter, I only have a peers and dat file in application support? Where is this config file to found - I am assuming I'll know where to add par=1 as there will be a par value and text edit will do this? cheers – bard Feb 9 '14 at 14:41
  • It's in the data directory (the same directory that holds peers.dat, wallet.dat, blocks/, chainstate/, ...). If it doesn't exist yet, you can create it using a text editor. – Pieter Wuille Feb 9 '14 at 15:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.