2
I'm running bitcoind and generate a bunch of bitcoin addresses. I use a PHP script and an Apache2 server to make calls to the RPC API.
bitcoind uses ~ 0.7%-2.2% of the CPU and writes ~3 MB/s on the SSD. Apache2 uses ~0.3% of the CPU.
I set -rpcthreads to 8 but that didn't do anything for me.
Where is the bottleneck? Is there a way to speed the hole process up?
I know that vanitygen can create a lot of addresses but then I would need another step to add them all to a wallet therefor I would prefer using bitcoind. bitcoin-qt is just awful slow at the same task with RPC commands.
Would it speed things up if I would set the keypool to 0? Generate the new address directly for the request and skipping the writing to the keypool? – Cremo – 2016-06-20T17:53:06.777
1No, it would still need to generate one. What you can do is set your keypool very large, start bitcoind and let it generate the many keys, and then set the keypool size low again and restart. No new keys will be generated until the keypool is at the low sizr again. – Pieter Wuille – 2016-06-20T18:50:35.180
Setting the pool large and letting addresses be generated is as fast as requesting them one by one. No time advantage. Setting the pool to 0 however caused some kind of bug? At least bitcoind "lost" ~1.000.000 keys. Judging by the size of the wallet the keys were still in the wallet but the counter bitcoind displayed in the console were off. – Cremo – 2016-06-22T20:04:50.843
@cremo Setting the pool large will be just as slow, but you can do it way ahead of time. – Pieter Wuille – 2016-06-22T21:24:06.193